Sounds as if the fuel tank breather tube is blocked by a build up of dirt. As you drive a vacuum will gradually build up in the fuel tank and eventually the fuel flow will stop. If you remove the fuel filler cap when it happens you'll probably hear an inrush of air as the vacuum is cleared and you'll then be able to start it again.
The long term solution is to clean out the breather tube.
ChicksFan, July 2009