It may be a combination of things, like low voltage to the IAC and the IAC sticking.
When I have high idle, I remove the IAC and squirt a little oil behind the piston into the piston gear rod and motor drive area. Don't try to pull the piston out, the far enough point is hard to judge and too far point will launch the piston and spring. You may never get it back together again without stripping the gear teeth. Be careful to get the "O" ring gasket back in straight and seated properly.
The symptoms will often disappear for weeks or if I'm lucky months. The high idle thing also seems to be temperature sensitive. Mine seems worse when the motor is hot or the weather is really cold.
Also noticed, after the motor has been running for awhile and the alternator has mostly filled the battery back up and the charging voltage comes down a little, I'm more likely to have high idle. Either the typical hot start high idle or the constant high idle (the 12-1300 RPM variety).
I do believe there is more than one thing going on, many of the high idle conditions, while related, are different problems that can happen alone or in tandem. The low voltage, sticky piston and temperature may all cause problems, together or separately.
I disassembled an IAC, to see what makes it tick. It was an original from 87. First thing I noticed was the grease or lube they used on the piston rod and motor gear was really thick almost puddy.