We are selected based on our behavior in the early days of the beta - I don't exactly know the criteria, but an interest in the site and the subject is the most important, then I guess they review our posts and comments for any sign of negative behavior.
We do have to agree a policy document, and have to read some guidance on how to moderate. Plus we are overseen by SE staff who pop in from time to time to this site, like Robert, Anna or Aarthi. We are also encouraged to go to some web-chat events for moderators, but these are often in working hours and I find that difficult.
We are given access to the SE moderators chat room where we are encouraged to share issues - direction of the site, or particular problems with other SE moderators and staff members.
If there was an issue with a moderator, first of all there are 3 of us in any Beta site ..... so I hope that the other two would notice and try to address this themselves. If someone had a particular issue with a moderator, first and foremost try to work it out yourself in chat with them - they may not realize how seriously you take some aspect of their behavior.
If that failed you could take it to the other two, and I would hope that they were not too much of a clique to recognize what is or is not unacceptable behavior.
In the event that this failed, you could try to raise this with someone on the SE community team. Ultimately you have recourse to send a message to support - via the Contact Us form (link at the bottom of the page).
We can be removed by Stack Exchange at any time, for no reason in particular.
The 'inactive old Mods' part of the question is interesting. If one of us noticed that someone wasn't contributing here to the moderation 'load' - excusing travel, vacation etc - then I think they would have a word with us about stepping down.