I think these problems all stem from cooling problems - for which the Punto is notorious. I'd be surprised if the head gasket wasn't gone, actually. Anyway I'd replace the thermostat (at the end of the top hose) and also the fan switch which is often in the side of the radiator. Then, with new coolant in, I'd remove the top hose going into the heater radiator and make sure that there is water actually there - its dead easy to get an airlock - with the engine ticking over make sure that there is coolant in this hose. With the engine up to temperature both heater hoses should be very hot and the fan should cut in. To check for head gasket failure, run the engine with the radiator fill cap off - if you see bubbles or water gushes out there is a good chance that it has failed.
John
December 2007