Well you have done a good job so far. bad pump, intermittent block at tank pick up, gas cap not venting. Do and test these one at a time:
1. Take off cap and try.
2. Pull fuel from a gas can. (Hose attached to pump inlet and stick other end into a plastic 2 gal container)
3. Report

These are quick and easy to do and in 15 minutes you will know what is wrong for sure.
It is possible that running out of gas did cause a "pick up" of gunk into sender tube or hoses.


Right is right, even if everyone is against it, and wrong is wrong, even if everyone is for it. - William Penn