It turns out that I didn't have to replace the starter after all. In order to test the cranking voltage, I had to disconnect the ignition wire at the solenoid, and while doing that, I found that the positive lead stud on the solenoid was loose. Once I tightened that, the problem was solved. Now, the starter hits full speed the instant I turn the key - no more intermittant slow speed problems. The cranking voltage is slightly low, but the starter seems fine and the engine starts immediately, so I'm going to ignore that for now.