similar situation
What I've done when fixing 2002 odometers, where the tenths wheel slips on the shaft (and you shaft slip issue is similar) is remove the shaft and ding it lightly between two ball pein hammers. This puts a small deformation on the shaft which makes for an interference fit in the shaft hole, then it won't slide out. Some like a drop of superglue to hold the shaft in place.
Now, before anyone takes the shaft out of their odometer, let me warn you that you'll need a lot of patience and care to reassemble the wheels on the shaft. But you can reset your mileage to zero all the way across and then you can time your oil changes and tuneups a little better.
For any that might question the legality of this, it's probably not, and I'm not licensed by anyone to do any such thing. But at the time I was buying and selling 20- or 30-year old cars whose odometers didn't work when I got 'em. I always notified the buyer, and checked off the box on the title form to the effect that the indicated mileage was not correct. The actual mileage neither I nor the seller had any way to know. We frequently didn't have receipts with indicated mileage to tell us what might be correct. No foul as far as I was concerned. No one buys old cars in the under $3,000 range expecting things to be in as-new condition.