Dirty throttle body?
Idle control valve?
I'd try spraying carburettor cleaner into the throttle body to clean it up.
Are you using decent fuel with additive cleaners such as BP Ultimate or Shell V Power. I bet you're not. A few tankfuls of that might sort it. I use it all the time in my cars. Might be more expensive per litre but my cars run perfectly and never need additional injector cleaners or the like. I never use supermarket petrol.
Try it.
Finally, could your timing be out because of a stretched timing chain? Happens if oil changes are neglected on these engines.
ChicksFan, November 2011