To me, the rough running when accelerating hard (and not just lack of power) suggests an ignition problem. I also vote for testing the throttle position sensor - you can test the actual switch is working with these steps I discovered:
[I]Drive at 30mph in '3', and shift from '3' to '2' with your foot off the accelerator. If it bangs down into 2nd gear with a jolt, your switch is working OK for zero throttle. If you do the same thing with even a tiny bit of throttle, it should slip quite a bit, letting you rev the engine fairly freely, and not instantly engage 2nd gear with a thump.[/I}
If you can get these 2 different behaviours, the switch is fine.
Have you tried changing the coil?
2.5-16v 1990 90,000m Astral Silver
2.0E 8v 1986 107,000m Black