Well it's fixed I think.
The PCM swap didn't solve the problem. The dealer ended up changing the TPS and that appears to have taken care of it. That's a bit weird since I had already replaced the TPS but I suppose it could have developed an issue.
Either way, things have been running much better for the last few days. Now on to some Bilstein struts and shocks!