OP, you didn't indicate whether your DS "split" his nom applications -- i.e., put USNA first for one MOC and USMA first for another.
This is fairly common tactic, but occasionally it "backfires." MOCs want to make as many constituents as possible happy. If a candidate lists USMA as his first choice and the MOC gives him that nom, the MOC figures the candidate is thrilled. Meanwhile, the candidate with the USNA LOA lists USNA as his first choice with the other MOCs but doesn't get a nom. He now has an LOA from USNA without a nom and a nom to USMA with no LOA.
In this hypothetical, a lot depends on the candidate's desires. Which SA does he really want to attend? If he does nothing, he may end up with an appointment to USMA even without the LOA. So all is good if he wants USMA. If his preference is USNA, then he'd best call the MOC who gave him the nom to USMA and try to "switch" it b/c it's very unlikely he will be appointed without a nom, even with an LOA.
The OP's situation is made more difficult b/c they haven't heard from one MOC so there is a possibility the situation will resolve itself. However, once a slate is submitted to a SA, it's harder for the MOC to change it than before it's submitted.
Finally, for the OP, if your DS listed USMA first for the MOC who gave him that nom, a call requesting to switch to USNA may not go over well b/c the MOC's staff may wonder why he didn't put USNA down as his first choice if that indeed was his first choice. Conversely, if he listed USNA first (even if USMA was second), things are made much easier.
Not an easy situation to be in . . . and the OP's approach is probably the best but not ideal (in a world where there isn't an ideal solution).