I don't really see how it can ever be fixed at this point because the precedents have been set. Even if you sign up when there is a "good" President in office and reasonable policies, anyone interested in a career has to consider what the next President might do. In the past, the biggest difference in C-in-C's was the chance of being deployed in combat. But now, you have to consider what the President may do in peacetime in terms of wacky social engineering, political bias/indoctrination, etc..
What talented young person is going to what to roll the dice on whether or not their career gets sabotaged by the political trend of the moment? Because unlike the civilian world, you can't just quit an obnoxious employer and sign on with another company in the same general industry. Your skills aren't transferable, so you're stuck either submitting to social engineering with which you don't agree, or risking your family's financial security. And if that decision happens after you've already invested 12 years in, what do you do?