I have a new thermostat, and I'm going to put it in.
Unlike the one in there now, I got this one from the GM dealer, and it has the OEM jiggle pin to let it de-aerate when filling. I almost overheated the car when I put in the one that's in it now, because of an air pocket. After that, I figured out that removing the temp sensor from the pipe behind the engine that leads to the 'stat will de-aerate it just fine, if you have one of those aftermarket 'stats without the pin.
I'm still not sure the new 'stat will solve this, though. Two days ago, after driving 25 miles in blizzard conditions, the gauge drooped way down to the "too cold" area. This time, turning the heat off brought the temperature back to normal. I guess maybe it is the thermostat. I'll find out.
BTW, the fast idle condition has only accompanied the high temp condition on maybe two occasions. The other times it's just been the temperature. This last time, when it went cold (when I would expect a high idle), the idle was normal.
After correcting each of these temperature excursions with the heater, the problem seems to fix itself for a while.