Fitted the new water pump today. Couldn't see much wrong with the old one apart from some free-play in the pulley. The impeller looked fine though. Anyway, fitted the new one as the old one was noisy, probably due to the play in it. I took JohnC's advise and bled the system whilst the rear was still on the ramps, so the back of the car was slightly elevated to aid bleeding.
I started it up and ran it at a fast idle for a few minutes. Took much longer this time for everything to get hot which I took as a good sign. The front rad hoses got hot this time, the stat opened around the 90 mark on the temp gauge, maybe just before the 90 mark, which seems spot on as the stat is rated at 88 deg. I continued to run it, it seemed to take an age - again, a good sign - but eventually the rad fan kicked in. The temp gauge didn't go anywhere near the red and the cabin heater was nice and toasty.
No blowing cold air. Everything is looking good so far. I'll check the coolant level when it's nice and cold in the morning and give it a small run to check it's still ok.
I can only guess I had an air lock somewhere as the old pump still seemed to have a decent working impeller despite the play in it.
I did notice though, while I had all the hoses off, the bottom hose was routed wrong. It was routed over the HT leads rail that runs across the rear of the engine and which bolts to the back of the water pump. So the bottom hose was sat too high relative to the water pump and thermostat housing. Maybe this has prevented proper bleeding of the system in the past and been the cause of the problem? It was also having the effect of pushing the top hose up against the throttle cable lever and causing my throttle to stick occasionally. So I re-routed it correctly under the HT leads rail when I re-fitted it to the pump.
Don't know why I hadn't spotted this before. I actually replaced the bottom hose myself last year but just routed it the same way as the old one I removed, assuming that would be correct. I did have both hoses replaced by a garage some years ago and the cylinder head gaskets done by another garage a few years ago too, so I'm guessing one of these occasions is when the bottom hose was routed the wrong way and I've just copied it since until I noticed the error today. It wasn't me!
Anyway, hopefully it's sorted now. Thanks for everyone's help and advice.