Your EFI system does not provide a %TPS in the datastream. That value is simply calculated from the voltage. This can cause confusion when the calculation doesn't show 0% to 100% TPS as the throttle is moved. I don't think the TPS voltage varying by 0.02V with the throttle closed is an issue.

It runs smoothly or roughly when holding the gas to have a little higher rpm? If it's smooth then maybe the IAC is the issue but if it's still rough then it's most likely something else. If you open the throttle a bit that's the same as the IAC being open more so both should have the same effect.