First of all, I'm afraid that I am still not clear as to what is happening. Are you saying that the starter spins the engine at a slower than normal starting speed and that it must spin the engine for a long time before it starts?
Whatever the problem, DON'T just start throwing parts at the problem without doing some diagnosis first. That is almost always the most expensive way to fix it. If you do not have the experience or equipment to diagnose the problem, you will be money ahead taking it to a good tech for proper diagnosis.
If my understanding of your problem as I clarified it above is correct, the first thing to do is a Voltage Drop test on the starter circuit. Once the starter is spinning the engine at normal speed, if you still have a starting problem, you need to test the spark. It should make a nice, fat, blue spark.
If you have a fat, blue spark then check fuel pressure paying attention to the pressure when you first turn on the key. You should hear the fuel pump run for a few seconds then shut off. Make sure the pressure is up and stays up for several minutes after the key is turned off.
Good luck,