Submarines rely on stealth. If they surface then they lose that stealth and they are nothing but a highly vulnerable target.
But I assume there are Navy ships that are capable of launching a SAM and, as I recall, there was a Naval exercise being conducted in the area at the time of the shoot-down.
Then you would have to believe that the Navy was so incredibly stupid as to shoot a missile into the most packed, highly trafficked air corridor in the world. Having spent many, many years in the armed forces I can attest that the military is sometimes ponderous, often bureaucratic, but it isn't criminally stupid. No matter what people may want to think.
Nope. It would have been a tragic mistake. Those do happen. Or, maybe more likely, it could have been a terrorist with a SAM missile. But you don't buy those at your typical yard sale.
So what happened? A missile shot TWA 800 down and it was covered up. I rate the possibility of that scenario at 99%+. It was such an obvious cover-up. Hundreds of witnesses saw the launch and the explosion.
If you have a better explanation you should post it.