check an often missed cause:
corroded or clogged up anti siphon valve on the fuel tank. Follow the fuel line from the filter/pump back to the tank, where the line attaches to the tank, that barbed fitting is the anti siphon valve. My boat had this problem about 20 years ago.