No, nor should it be.
Even though I understand why some countries do have laws against it, I'd rather people were able to wear it out and about and let everyone know they're scumbags.
This doesn't work that way. Allowing it to exist in public because you think it "exposes" them for the scumbags they are, never actually works. Because they already know they're scumbags. That's not a revelation to them.
All they want is to be seen and start a conflict, while trying to act as "peaceful" as possible, because being seen in public like this without any sort of repercussion normalizes it to a lot of impressionable people who feel emboldened to try it themselves, while increasingly pushing the boundaries of what they can get away with.
This is why "always punch nazis" actually holds some merit to it, because if the potential risk of going out and dressing like/acting like/being a nazi is liable to get you decked on a moment's notice, it's going to be more of a deterrent to doing that than just about anything else. The less people going out and publicly displaying themselves like this, the less people who get radicalized by the sight of it, which means even less people doing it, etc. etc.
1st amendment, if anyone attempted to pass a hate speech law, it would get tied up and likely dismissed by the supreme court due to said amendment.
Passing another amendment (which is just about the only way to get around the president/courts) would require 2/3rd votes in both House and Senate, which the democrats aren't even close to getting.