If you are certain all plugs have spark, spray a little starting fluid around the air intake when the engine stops to see if it trys to start. I think your problem is vapor locking in the carb. Even though the float chamber has gas flowing into it, the fuel may not be atomizing properly because it is boiling. I would try cooling the lines and the carb with ice to see if that got things going again when it stops.
If it's not a vapor lock problem, it may be trash that is randomly plugging your needle valve on the input to the float chamber or main jet...most likely the main jet since the float chamber is getting fuel.
On these simple engines, there are just so many things that can keep them from running:
1. Choked...no air or too little air
2. Not enough fuel (vapor lock or trash)
3. Too much fuel (flooded)
4. No spark
5. Intake or exhaust valves sticking open and loss of compression.
If the first four are okay, then do a compression check to look for stuck valves.