My Pajero suffered a similar issue a while back, my brother in law (auto sparky) told me to disconnect the battery completely and let the car sit for a few hours, if you haven't already tried.
Apparently there is some sort of fault memory in the engine management system, and left for a few hours without power it just cleared the fault by itself. Been fine ever since.
I don't understand stuff I can't see.
Hogster