After a largely drab first 45 minutes, Dortmund found their cutting edge after the break, with Shinji Kagawa's deflected shot breaking the deadlock in the 49th minute before Lucas Barrios made sure of the win with 20 minutes to go.
The victory sends Dortmund seven points clear at the top ahead of the rest of the weekend's action.
The first half was slow to get going, with the only chance of note coming five minutes before the break when Marcel Schmelzer's cross fell perfectly for Mario Gotze, but he poked wide of the left-hand post.
Dortmund came to life in the second half, and a quick break down the right wing provided them with the breakthrough.
Lukasz Piszczek rolled the ball across for the on-running Kagawa, and his shot took a deflection on its way into the net.
Dortmund were looking much more dangerous as they began to win headers in and around the area, but they did not find a way to test goalkeeper Jaroslav Drobny.
Barrios had the ball in the net in the 62nd minute after a neat backheel from Kagawa, but the flag was correctly raised for offside.
Little had been seen of Hamburg as an attacking force, but teenage substitute Heung-Min Son was doing his best to change that, and he managed to wriggle his way past several defenders, only to see his shot charged down as he took a moment too long to find his footing.
Barrios then settled the match after 70 minutes thanks to a swift counter-attack.
Kagawa was at the heart of matters again, with his throughball allowing Gotze to race free.
He attempted to dink the ball over Drobny and although his effort was well wide, the onrushing Kevin Grobkreutz managed to knock it back to give Barrios a tap in.
Mladen Petric might have got a goal back for Hamburg in the 74th minute but headed over when well placed, and Dortmund comfortably played out the final minutes.