Wrapping a heading tag in a div is pointless. extra bloat. I don't like that linked example at all.
Also, you already have heading tags native into xf code, with the exception of h1, which is actually a good thing as the site already has one built in.
heading 1 -> <h2>
heading 2 -> <h3>
and so forth. This is a good thing.
As for spacing, you can use the extra.less template to control and line spacing, margin, padding, etc as an over-ride.