Heres a novel idea that I had and have not attempted yet, but it's in the plans. It will depend on the amount of space you have and the amount of sunexposure you have.
First, insulate the hell out of that garage. The more insulation you have the better your chances of keeping it warm cheaply. Once you have that done heres an idea to try. At the back of my yard, I have a 6 foot tall wood fence. I recently bought a solar pool heater to use in the summer. It looks like corrugated plastic. It's 24 feet long by 4 feet tall and can be hung on the fence posts with some framing and support. When I hang it I am planning on also enclosing the system by building a raised frame onto which I can add plexiglass panels. This way the outside temperature and wind will not drop the temperature and reduce the heating capabilities. So then I got to thinking. On a normal cold winter day I can go to that fence as is and if I touch it I notice it is considerably warmer than the outside air. If I leave this black plastic sheet there with the plexiglass panels I will essentially have a big air heating chamber through the winter. If I set up an air transfer system to take warm air out of my house and pump it into one side of that chamber, the air coming out of the opther end should be considerably warmer. Then I could route that back into my house and I have a solar air heater.
If you were to do this you could heat your well insulated garage area for relatively cheap, and it would come along with good air circulation as well.I paid around $250 for the solar heating panels and I think it's going to be another $250 for all the materials to complete it. You could also use the same system and circulate antifreeze through it instead of making it a hot air system and heat the antifreeze in the winter. Find an old car radiator and build a closed system water heating solar setup in the garage. The sun is our friend. Lets all use it to our best advantage.