I just replaced an old starter in a friend's truck, and the replacement was bad as well. Worked fine when the engine was cold, but dragged like a weak battery when the engine was hot. Took it back to the store, and was ready for an argument when they bench-tested it and claimed it worked properly, but fortunately, their testing machine was down and they didn't have any others, so I got my money back and went to a different store, which used a better rebuild house. That one worked okay.
Got me to thinking, though - what exactly is wrong with the starter in such a case? I've known about this for years, but don't know exactly what is wrong. The resistance in the armature windings goes up as the motor ages, and rebuild houses (as far as I know) only replace brushes, bushing and similar parts. I know of nobody who actually rewinds the armature.
Would that help? Is it the metal in the copper wires on the armature that somehow ages? Is it the iron in the armature? Both? Is there a way to fix it? Anneal the armature? Anealing hardens steel, but softens copper. What is really wrong in an electric motor with high resistance, and is there a way to fix it?