There is a possibility that the iac needs to be replaced...but first.
What is your tps voltage at idle, engine running? It must be .46 or less.
Secondly, with the car fully hot, idling in Park, AC off, what are the iac counts, they should be pretty steady and in a range between say, 15-40.
If they are not, unscrewing (counterclockwise) the iac adjustment screw will increase the numbers. That will also lower your tps voltage. If the numbers are too high, turning the screw clockwise will decrease the numbers and increase the tps voltage. If it goes above .46, it will cause a fast idle. After an adjustment, kill the engine and restart to reset the iac...see if it stays where you want it. Don't let the tps go over .46 and I prefer to be at .44 or less, to provide some margin of error.
It would not hurt to remove the iac and clean it with carb cleaner along with the passages into the throttle body before you start. Do not overtighten it, just snug, so you don't crack the plastic housing.