I'm Neal and I am here to assist you. Only accept when you are happy with my assistance. If I can't help I will open your Question to other experts.
Are you getting a check engine light or any codes?
The crank sensor is one possibility but is impossible to test when it acts up like that. It is normal for the crank sensor to not throw a code.
Based on your symptoms I would try the crank sensor though I surely cannot guarantee that is it, though in my experience it is the most likely problem.