While there are religious, cultural and political aspects to this, the Iranian govt has primarily become a kleptocracy in recent years. It sustains power through the Revolutionary Guard (aka IRGC) which has grown into what's essentially a state-run, money-making commercial enterprise. It collaborates and colludes with various entities across the Iranian economy which it controls either directly or via bribes and coercion. While reasonable people can debate what the recent attacks on Iran accomplished, they certainly nerfed a large part of the IRGC's income. The new Hormuz extortion scheme isn't just retaliation or vengeance, it's replacing lost income which is urgently needed to prop up the Iranian government.
And large merchant ships, especially crude oil tankers, and quite tough to sink. When they take a hit it usually just causes some damage.
Houthis closed their straight some years ago and US wasn’t able to do anything about that neither. And Houthis are nowhere near as capable as Iran.
US gambled on decapitation strike and failed.
You also have a lot more tries with cheap drones since the target is lower value, so you have hundreds of data points on how each iteration performs vs hitting a naval ship which is an extremely rare event, so it's hard to see whether your iteration on a rocket actually succeeded.