analogWrite(3, 1023); //Spins the motor on Channel A at full speed - THIS LINE IS INCORRECT - SHOULD BE LIKE NEXT LINE
analogWrite(3, 255); //Spins the motor on channel A at full speed
Then, why don't you fix it?
Before replacing the delay() calls, explain why you want to do that.
If you understand that calling millis() is like looking at your watch, and that the if test is comparing now with then, it is pretty easy to understand how to remove all the delay() calls.
Knowing what to do if now minus then is greater than some interval is the tricky part.