The IAC controls the idle via the PCM module. Low or high IAC counts will cause a flaky idle either low or high. Remove it and clean the spring loaded pintle with throttle body spray cleaner and lube with silicone lube. Also, clean out the seat where it mounts to the throttle body. Carbon builds up pretty bad over the years or if it has never been serviced. Make sure you clean the bowl at the end of the pintle real good with a rag. See pic below.
A bad TPS will normally throw a DTC or cause a noticeable shifting problem but you can check the input and output voltages with a DMM. But try the IAC as suggested first.