Let's build on what you are already are working with. Maybe you have already thought of this, but I don't see why you cannot rename the resulting RNDSEL field (or calculate values to a new field) in successive executions RNDSEL_1, RNDSEL_2, ... etc., so that no selections sets are lost. Unless you mean to automate the whole process of producing the random sets?
Also, with the added field, you can choose whether or not you want certain sets included or not in other 'populations' for the possibility of being 're-selected'. And you can simply export the selections to new 'exclusive' sets (and run them again exclusively if you want a 'subset' sampling).
Does that solve your problem? If not, then yes, this can otherwise be done via Python, etc.