They aren't attacking the ships because they're American, they are attacking any ship that passes through there, it's not like Chinese ships get a pass because they're not arming Israel. They are instituting a blockade, the same as Israel is doing in gaza, if anyone crosses there line, regardless of nationality, they will shoot.
letting the houthis get away with attacking us is stupid and, more importantly, politically indefensible.
And bombing an apartment building, when again they haven't attacked us since the ceasefire, is morally indefensible. This wasn't the houthis decapitating and American on video and every major outlet covering it. This was all in response to a threat, the same threat that Israel has for anyone trying to get food in to Gaza. If you asked your average American what have the houthis done lately they'd respond "nothing i know of" and they'd be right. No one was asking for this strike except for the brain dead fox News audience who think everyone in the middle east is a terrorist.