I would change the exhaust cam shaft position sensor. If it is reporting back incorrectly it will cause it to run like dookie. The 420 code is probably a result of the cam being out of phase from where it is supposed to be.
Ecu commands 30°
Actuator moves normal commanded amount.
CPS says hey actuator you didnt get there or you moved to much because its fubar.
Ecu tries to correct
Making car run like crap.
This correction happens constantly.
Just like a servo on CNC.
Let us know what happens.
I think your onto it though.