See if the fuel line from the gas tank to the carb has a "bend" in it where the line loops lower than the carb for a few inches. Like the line starts high at gas tank then loops down LOWER than the carb and then back UP to the carb. IF you have a PARTIAL gas flow problem somewhere (like the aforementioned various gas cap vent or other plugged vents or filter etc.) the pressure of the gas in the full tank will be reduced enough as the level gets lower and the engine won't be able to get the gas fast enough and you'll notice no gas in the filter because of the downward and then upward lack of gas flow caused by the lower loop. The result is the engine will stall and if you wait a few minutes the "loop" of lower gas line will eventually refill and fill the empty carb bowl and the engine will start again .. until until the carb again doesn't get the correct flow of gas and the loop causes the carb starve from a lack of gas. Meantime the loop of gas line evenutally refills the carb and the engine starts again.
You might find that simply cutting off the excess amount of gas line so the line is a straight downward path to the carb with NO loop of line lower than the carb MIGHT fix your problem. My son who is an old tractor rebuilder / hobby guy has seen this problem with the gas line loop occur "magically" on older vintage gravity fed systems he's worked on. And that fuel line routing was the only thing that was needed to fix the problem. Just a case of an older less efficient system needing a little adjustment to get as much fuel flow as possible to flow normally.
Your problem most likely is fuel system flow related and keep in mind adjusting the possition of the fuel line to be a more direct and efficient flow to the carb is only a bandaid and I would guess there is still something amiss with the flow or venting of the fuel system. I personally have an 18 HP sears tractor that one day started to do the same thing ONLY it would fail when the gas tank got below half full. It ran FINE with full tank .. but as I approached 1/2 tank it would do exactly what is happening to you. I'd let it sit a while and it would then start fine and run for a minute or two and stall again. All I had to do was to fill the tank and it would run fine again until the tank approached half full. And I did EVERYTHING you could with carb, gas caps, filters etc just like you. I did have quite a bend in the gas line as mentioned and I cut off the excess and re-routed the line to remove the loop and no more problems. VERY weird and I am also still trying to figure out WHAT in my fuel system caused the problem but so far have not found the culprit .. only that increasing the gas flow by reducing the excess fuel line loop below the carb and making it a straight downward line to the carb has allowed me to run the tractor until the tank is empty.
You might find that simply cutting off the excess amount of gas line so the line is a straight downward path to the carb with NO loop of line lower than the carb MIGHT fix your problem. My son who is an old tractor rebuilder / hobby guy has seen this problem with the gas line loop occur "magically" on older vintage gravity fed systems he's worked on. And that fuel line routing was the only thing that was needed to fix the problem. Just a case of an older less efficient system needing a little adjustment to get as much fuel flow as possible to flow normally.
Your problem most likely is fuel system flow related and keep in mind adjusting the possition of the fuel line to be a more direct and efficient flow to the carb is only a bandaid and I would guess there is still something amiss with the flow or venting of the fuel system. I personally have an 18 HP sears tractor that one day started to do the same thing ONLY it would fail when the gas tank got below half full. It ran FINE with full tank .. but as I approached 1/2 tank it would do exactly what is happening to you. I'd let it sit a while and it would then start fine and run for a minute or two and stall again. All I had to do was to fill the tank and it would run fine again until the tank approached half full. And I did EVERYTHING you could with carb, gas caps, filters etc just like you. I did have quite a bend in the gas line as mentioned and I cut off the excess and re-routed the line to remove the loop and no more problems. VERY weird and I am also still trying to figure out WHAT in my fuel system caused the problem but so far have not found the culprit .. only that increasing the gas flow by reducing the excess fuel line loop below the carb and making it a straight downward line to the carb has allowed me to run the tractor until the tank is empty.