For readability you could add some custom CSS to disable formatting. You could even disable it for everyone who’s not in a specific group, for example:
.topic-post:not(.group-team) .cooked {
H1,H2,H3,H4,H5,H6 {
font-size: 1em;
font-weight: normal;
}
}
I don’t think it’s a bad idea to potentially restrict heading use to specific users, but there’s no feature planned to support that at the moment. We wouldn’t want to remove headings entirely for everyone using Discourse, because I believe removing Hs might hurt a community’s search-ability (for example: we have a lot of tutorials here that use headings appropriately… and many aren’t written by staff/admins…).
One thing you could do is add the # to the blocked words feature using a regex like #{1,}\s (I believe this would work, but I’m not amazing at regex). That would block all # with a space after them (markdown headings).
Of course, that only works on new content. For old content, maybe you can strip out # using a rake task?