You said it yourself, citizenship doesn't give the right to vote. If they want representation, or the option to vote, then they should be in a state.
He can supress them all he wants, they are not current residents of a US state so in accordance with current voting laws they don't have the right to vote.
Easiest solution is to change the voting laws to give the right to vote to all legal US citizens.
Edit - Some voting machines selected Obama even though the person pressed Romney. And, also, Romney was heavily invested in a company that was making some of the voting machines. And lets not forget, his people intentionally mistraining their poll watchers.
Basically, the 'supposed' voting manipulation is on both sides.
In addition to being a United States citizen, people are also citizens of their respective states. This status does not change when one joins the military. Additionally, federal statutes exist to allow our overseas troops ample time to have their votes counted.
Giving all citizens an affirmative right to vote would require a constitutional amendment, since the U.S. Supreme Court ruled that there is no affirmative right to vote.