Please allow us to use common language without gatekeeping.
"Felon" allows everyone to know what "node" of the vocab network you just jumped into.
Given that “felon” means “person that’s been convicted of a felony at some point in their life” and the fact that “felony” covers such a wide variety of crimes, it is a genuinely useless indicator of context.
Jump too quickly into arguing for hyper-specific contexts bringing meaninglessness to colloquial, general contexts is a surefire way to signal to counterparties you are unwilling to play the negotiation-over-contexts games necessary for smooth conversation with most people generally.