has your idle screw been messed with? when was the last time you cleaned your throttle body? idle screw should be a turn and a half out. 2 at the most. i wouldn't go anymore then that. is there two holes on the inside of your throttle body on the left side? while your running your car try plugging up the top one. that will block off the idle control valve. i would just give everything a good cleaning before throwing parts at it. when was the last time you checked your coolant temp sensor. believe it or not this can mess with fuel trim, your tps sensor, your 02 sensor, map sensor. all of these effect how your car will idle.