Couple things that stick out to me from what you said, just because you smell fuel at times does not mean the fuel pump is supplying the proper amount of fuel.
Also, when you say you checked the crank sensor, how did you do this? This is the first thing that I suspect. If you have an issue with the crank sensor but crank the engine long enough, it may still fire off of the cam sensor only if the PCM can determine engine position. However, this will cause a long crank. This would explain your issue.
Let me know about this stuff and we can go from there. Thanks