Well, I'll go you one better...that
is a bug, and a pretty nasty one at that.

Your posts prompted me to sim with that option turned on for the first time today, and you're right, player IDs are being reused (the csv dump confirms it). Unless there's a pressing reason for keeping the in-use player ID sequentially (and consecutively) numbered at all times, I for one can't fathom why OOTP doesn't just keep adding player IDs to the back of the list and leave gaps in the numbering where the deleted players were.
I don't have the time to sim ahead until the Accomplishments go funky, but I dare say your observation about some minor league accomplishments eventually showing the wrong players must be accurate.
One more thing...I'm a bit distressed to find that "major leagues" is defined differently here than in the rest of the game. (My indy setup shows the same "everyone's getting deleted" behaviour as yours.) Everywhere else in OOTP, a "major" league is one that isn't affiliated to another league, even if its designation isn't "ML". I suppose I can see the logic of deleting indy minor league players in a universe that has major leagues for which the indies just serve as feeders, but what if it doesn't? I'm also wondering whether international leagues are treated as equivalent to majors here, or not...