Sounds like the classic "fuel delivery" problem. Letting the engine rest for a period or topping off the fuel may offer some temporary relief. Hooking up a fuel pressure gauge to the system when the problem is going on will help diagnose the problem. When the fuel pressure available at the engine drops below 10 lbs problems begin. Make sure the main fuel filter is clear, the electric fuel pump screen is clear, the fuel tank screen is clear, and the entry port for fuel into the tank "flower pot" is clear.