Die <h1>- bis <h...>-Tags haben eine semantische Bedeutung. Man sollte sie also nicht für Layoutzwecke mißbrauchen.
Mit diesen Tags werden Überschriften dargestellt, und nach einer Überschrift gibt es nun einmal einen Umbruch.
Ganz einfach.
Wenn Du unbedingt darauf bestehst, die <h..>-Tags zu benutzen, dann kannst Du den Umbruch mit display:inline (http://selfhtml.teamone.de/css/eigenschaften/positionierung.htm#display) erzwingen - zumindest in aktuellen Browsern.
Andreas