i have been told that a high idle such as you described (one that mysteriously goes away when the key is turned off) is caused by a component going bad as the car warms up. The ECU gets the message that the unit is FUBAR'd, and uses the last known 'good' value from that component. This value says that the idle should be at 1200 rpms. BUT when you kill the power to the ECU (by turning the car off), it resets itself and the process starts over when the component again sends a bad signal and the ECU uses the last known good value... I think this is called fixed operational mode. Check out this thread
Fast idle when warm, 2.3-16v
where benzmac tells me to send the car to a shop. Rather against the purpose of asking the board, but still. My problem actually went away after a time, so I haven't followed it up. Perhaps check the components WHILE the car is idling poorly?
Best of Luck