In my opinion, assuming you have an allocated budget to do any of the 3, and the options given, option 1 is the least cost involved compared to option 2 & 3 :
Option 1 : overhauling would solve the issue, but in the long run, the problem would re-appear over time. yeah this is the easiest solution.
Option 2 : do bear in mind, changing to another n42, the issues would start all over again. then you'd hv more heartache. rather than replacing to another n42, might as well change to n46, an upgraded and more reliable version of n42.
Option 3 : now thats more like it. m54 is one of the best engine out there, lesser issue. also opportunity to increase power. source out for a good donor engine and a reliable and trusted mech to do the transplant.
my 2 sen.