Depending on your team stragey, taking down Ferrothorn could in many cases mean removing a very annoying wall, allowing another team mate to successfully set up or sweep. Haxorus taking some damage would probably not be a major problem then, seeing how ferrothorn would be gone (now not taking mold breaker into account, I'm not sure if it would take damage, but it could also be running rivalry). Also, it's not like Iron barbs really hurts much without the rocky helmet.
This is not what I really wanted to discuss though, as it seems from this discussion, people tend to want competitively viable moves to be available for every type, and available to most pokémon (like exactly such a fire move, or wild bolt that many with a shallow movepool got access to etc.). However, I think the restrictions really are a contribution to the meta-game, being able to check and wall certain threats as well as having to think slightly harder about which pokes to add to the team. If every pokémon could learn good moves from every type, only the ones with the very highest base stats would be popular, at least when it comes to sweeping.