Garland theme and h2 heading
Subtheme is the answer. The theme is the last line in the rendering of the page which is why you generally can't override it. The H2 tags is most likely hardcoded in the page template which is why you can't alter it.

that being said, you could in a module make garland use a page template that your module has created. This require some complex altering of the Drupal theming system, and is not something you want to do, unless you understand the consequences.