At Best Boot Him Out
At worst, do not let him re-enlist in July.
I enlisted in the U.S. Navy in 1958 and served on active duty for 21 years. One thing that I learned (and have never complained about), is that while in the Navy, and all the other branches of our military have the same rules, was that I checked the Constitution at the door and came under the UCMJ (Uniform Code of Military Justice).
Now before us we have a whiny E-5 Sergeant in the Marine Corps, who has not only disgraced himself, but he is attempting to disgrace the whole Corps. There is no “off-duty” time when a person is on active duty in the U.S. military. One is subject to the UCMJ from day 1 until midnight on the day you leave active-duty.
And it has to be as obvious as an ass on an elephant (thanks Dave) that you do not openly criticize the chain of command from your Gunnery Sergeant all the way to the top, which is the President.