It sounds to me like a timing problem. Since timing isn't adjustable on that motor no one has monitored it I'm sure. Temp sensor or control unit problems can effect timing. Its rare but it sounds like you have done everything else.
I don't believe you have a compression problem with 150psi uniformly on all cylinders. Any reading you get at cranking speed plays little value at driving speeds. If you had 150 at cranking and 180 was appropriate, it would only affect idle if that. Once things get moving the leaks do not have time to be of consequense unless there are great differences between cylinders.
Unfortunately you are changing parts and exploring but you really need a diagnostician.
Owner 24 bay BSC
Bosch Master, ASE master L1
26 years MB technician