has it done lots of miles?
think I'd start with the air flow sensor, the bit in the pipe from the air
filter, the carbon tracks in these get dirty and wear and mess up the engine
management. make sure it's not sticking and then clean the circuit board and
wiper. if you put a test meter on it you should get a smooth change in
resistance as you move the flap, if it jumps this may be the snag (and check
for leaks on the inlet side of the engine)
hope this helps