Had a similar issue many years ago on my 748E. It got to around 6k and just cut out, the revs dropped to zero and it would fire straight up again on the button. Changed the chip in the ecu for a spare one and it was good as gold and has been ever since. When you tested the tps did you use an analogue meter? You should be able to see the needle swing smoothly across from min to max. If it falters or drops then it indicates an internal problem in the tps. A digital meter probably won't give a continuous reading that will show up.
He's re-visited various things, one of which was the crank position sensor, which he had tried with and without the shim/ spacer, it had clearance without it, but ended up re-installing it. Tonight decided to take the shim out, started it, let it warm a bit, rev'd it up, it went straight past 3K, tried it several times and it works every time. Not really sure what has fixed it, may have been a slightly poor "dry" connection and by taking it apart again it has re-fitted more positively. He is now happy, what a lot of f#cking about!
This is the second post this month with suspect crank position sensors being at fault? On this model range. Hope it lasts Andrew46.