And the reason the US is not already attacking Iran is because the consequences are (at best) unpredictable. Yes bombing Iran might stop supplies of weapons to attack ships in the Red Sea but imagine now that those weapons are then used directly in the Persian Gulf? Good luck running that war during a US presidential campaign.
I did not suggest the US should attack Iran -- I suggested they should threaten to attack. Iran has executed a gray zone / proxy war against Israel and the US for some time now, and they have recently escalated, by increasing the number and intensity of attacks on US military installations in the region, and by attacking civilian ships in the Red Sea that do not belong to Russia, China (and Iran of course). However it seems clear that Iran is not (yet) ready to start a full-scale war. It's not in their interest. Since they are not interested in a full-scale war this should be used to put pressure on them to stop the Houthi attacks.
Of course they must be convinced that failure to act will lead to attacks. If this can be communicated clearly and if they fail to act then unfortunately an attack must happen, but I strongly doubt that would be the outcome. IF that is the outcome then I think a full-scale war between Iran and US/Israel is in any case inevitable, and just a matter of time. If this is the unfortunate case then it might be better that the US is choosing the time and place to escalate, and not Iran.
Currently US/Israel is on the backfoot in the ME, Ukraine/EU is on the backfoot in Europe, and Taiwan/Philippines/Japan/etc. is on the backfoot in Asia. It seems to me the autocratic regimes are currently controlling the narratives. This is perhaps also inevitable but I think one should try to be creative and change this, if possible.