Hate to be the bearer of bad news, but starter pinions are usually pretty hard metal, and the flywheel ring gear is normal stuff.
There is a chance therefore that that the starter pinion is jamming on a worn ring gear.
If the battery is in good order and it's not a case of a high load draining a defective battery, remove the starter and with a torch look at the ring gear. Changing one at home is possible, but you'll need an assistant as you'll need to take the engine out, and remove the flywheel.
Tricky bit is heating all the ring and shrinking it onto the flywheel in the right place.