Check the connections to the battery and the starter. The battery ground, and the cable connection from the line to the positive post from the starter can be getting corroded. Poor connections usually get much hotter than the cable itself as there is a significant voltage drop across the corrosion products. If the cable itself is getting very hot there is a chance the cable has suffered some damage from either heat or being crimped during some other repair effort.
Anyway, the idea that the starter is getting weaker as it runs longer sounds like you have a connection problem, cable problem or the starter insulation is bad. I have seen the starter issue on Diesels regularly. If it is the starter, buy on from FastLane as theirs are Bosch rebuilds and get the stator rewound if the insulation is weak. Most other starter rebuilds are confined to mainly mechanical items, like bearings, brushes, the solenoid or a paint job. Rewinding cost effectively requires special tools and machines typically only available at the OEM.
Old stuff, especially starters that have had some hours spent cranking cars reluctant to start will have problems with the winding insulation. This is because the starter output rating is based on being used "intermittently" meaning for 10 seconds or so a couple times a day with long cooling down periods between starting attempts. If you run the starter for a few minutes continuously you will overload it as its continuous rating is much less than the intermittent duty rating. It will heat it up significantly more in continuous duty, which is not a design condition. Thus, the insulation will break down, leading to lower output and internal leakage of current (shorting), and ultimately to the demise of the starter. Fixing bearings and solenoid won't address the winding problems.
Good luck! Hope this helps, Jim
1986 Euro 190E 2.3-16 (291,000 miles),
1998 E300D TurboDiesel, 231,000 miles -purchased with 45,000,
1988 300E 5-speed 252,000 miles,
1983 240D 4-speed, purchased w/136,000, now with 222,000 miles.
2009 ML320CDI Bluetec, 89,000 miles
1971 220D (250,000 miles plus, sold to father-in-law),
1975 240D (245,000 miles - died of body rot),
1991 350SD (176,560 miles, weakest Benz I have owned),
1999 C230 Sport (45,400 miles),
1982 240D (321,000 miles, put to sleep)