Always remember, bautozone, advance auto parts, and all those places do not diagnose car problems. All they do is give you the codes stored, and hopefully sell you junk. Crank, and cam sensor codes, especially on chrysler products, can be very misleading. Just a month ago, I had to handle a comeback for one of the guys at work on a dodge with a 4.7L, very similar to our engine, for example. It had a crank sensor code, and the "tech", being the idget he is, shotgun guessed it had to be just that, a bad crank sensor. Didnt even leave the parkinglot before it set the code again. Third trip back, the manager got smart and let me look at it. 5 minutes later, Im showing them live readings from both the cam and crank sensors. Guess what was really bad? Cam sensor... even though it triggered a P0320. Changed out the sensor, backflagged the tech, and got it on the road.
Point of that is, you cant always expect the PCM to tell the truth. Its like a kid, and it tells what it thinks, not what is actual. Could be a bad cam sensor, could be a wiring issue to either sensor, or could be typical junk aftermarket electronics. If you want a reliable crank or cam sensor, buy it right from the dealer. Aftermarket quality control starts at the consumer, not in the factory.