It could be dirty carburetor but try these things...
Pull the thermostat out and run it without the thermostat. If it keeps running, then the thermostat is stuck closed or is clogged with debris. This can overheat the engine. When this engine overheats, there is an overheat sensor which turns off the spark and stops the motor.If it does stop, take the thermostat cover off and run it with it off for a little while....just to see if a good stream of water comes out. Then you will know how your water pump is and that there are no clogs in the water system up to the thermostat. Just because you have a telltale, it does not mean that the water is circulating through the engine....it only indicates that it is getting to the bottom of the powerhead.
Check all of the vent lines....like the crankcase vent going from the valve cover to the top of the intake on the carburetor.
May sure your tank is vented. To be sure, just remove the cap for a test.
Try squeezing the fuel bulb when it is starting to fail. If it picks up, then it could be fuel pump, leak or clogged hoses/fuel filter,
Try these things one by one
My money is on the thermostat. Just wild guess.
Mike