found the bugger
On further diagnosis, the system wasn't switching to demist after all, at fan speed 9 there's a fair amount of air bleed to the screen, making me think it was going to demist.
After trying everything I could think of, I resorted to the 'thump the crap out of the dash near the sensor' method and every time I did it, the temp went back to where it should have been. Just goes to show, sometimes the old methods are the best.
Thinking it was an intermittent open in the cabin sensor circuit, I pulled the sensor and control unit out and disconnected all the relevant conectors. I didn't find anything obvious apart from some wires near the sensor that had been trapped behind some trim. I pushed and pulled all the connections etc. with a multimeter attached, couldn't find any opens so put it all back together hoping it was just a dry joint at a connector.
Just to find out, I disconnected the cabin sensor with the system running and it did exactly what it had been doing when it was playing up.
Just back from a long drive and it seems like it's fixed now.
Wasn't hard to get the sensor out, if anyone has a similar problem, I can copy the removal procedures from the manual.
Unfortunately, if it's the actual sensor at fault, FOMOCO don't stock 'em any more...bastards.