First thing I would recommend - and this works well - is wash the windows and then polish with vinegar.
You can also buy some windscreen anti-mist spray to use on the inside of the windows. Some work better than others - the trick is to make sure the windscreen is clean first and then apply sparingly... if you use too much you get smears.
You can buy this anti-mist spray from here:
http://www.awin1.com/pclick.php?p=47852 ... &referrer=Once you've done that, you'll find that you'll either have a completely demisted windscreen in the morning, or it will clear within a few seconds.
As for a fan heater, I'm talking about a normal fan heater you can buy for your home. Robert Dyas do them for around £10 -
http://www.awin1.com/pclick.php?p=95372 ... &referrer= - just use it on the lower fan setting and you'll be using around 1kW of power. Five minutes of that and the inside of the car is nice and warm!