Change out the intake air temp. sensor.
very common problem on those with the exact symptoms your'e having, sensor costs about $18 bucks, its located in the rear driver side intake runner......
when ya pull the old one out it will be loaded up with gunk....