I think that most people above are suggesting an air leak.
I once had an auto mechanic
help me get my engine working again... we didn't have the right hoses and parts
so we cobbled together a solution. When he checked and refitted my mechanical fuel pump
, there was a critical crush washer that he reused instead of replaced. The engine ran really well at all RPM's, but under load would die. The re-used crushed washers sealed 'only so well'. Replaced the washers and all was well.
I'm thinking something similar is happening to you, but instead of load, I'm thinking heat is causing something to expand and let in air. I think the "~2 hours" is probably getting to the point where something has had time to heat up and expand.
I'm going to float an alternate possibility. I don't think it's the case with you, but it might be. I had this issue where I had the inside of my fuel tank
rust and flake but no inspection hatch
so i didn't know. On calm days, it would work
really well, but on rough days, my engine would quit after time... Rust flakes were getting sucked up to the fuel
intake and blocking flow. Then the engine would quit, the flakes would sink, and I could restart the engine and continue - until another flake would get sucked up. They were too big to go into the intake, so the filters looked clean-ish, but the effect was the same.
Is it possible that you've got rust flakes or algae blobs floating in your tank and clocking the intake?