Only thing I can think of is an air leak, but that would normally show up as a lean mixture on the fault codes.
If you want to try the substituting the TPS I've got a good used one here, the number on it is 95BF 98989. You can have it for whatever it costs to post.
However, I suspect if it was the TPS it would come up with a fault code.