have you checked you ICS??? Idle control censor.
Its located on the side of the throttle body. I had the same problem. I cleaned the throttle body with throttle body cleaner and the ICS with a cleaner that you can pick up at your local auto parts store. Just make sure you dont get throttle body cleaner on the ICS that caused some problems with mine
Just another idea man.