The Germany international converted from the spot early on, but Jurgen Klopp’s men made life difficult for themselves by not adding a second.
Hannover grew in confidence as the game wore on, but were unable to find an equaliser as Dortmund held on for a 1-0 win which puts them in the right frame of mind to face Arsenal in the Champions League in midweek.
Only three minutes had been played when Hiroki Sakai held Erik Durm as he tried to exchange passes with Reus inside the area, and a penalty was awarded.
Reus, an injury doubt right up to kick-off, placed the spot-kick beyond the reach of Ron Robert Zieler, who guessed the right way but could not reach the ball.
Dortmund had failed to turn their dominance into a goal a fortnight ago, when they were punished with their first defeat of the season, so such an early goal was a great relief, but not something they were going to sit on.
They continued to probe their opponents, albeit struggling to find a way through a well-drilled defence which, in spite of the early goal, kept its shape well.
Pierre-Emerick Aubameyang was proving to be the most likely of outlets for a second Dortmund goal, but his shoot on sight policy was not bringing the desired results.
Artur Sobiech was left to patrol the Hannover front line all alone, relying on rare pickings which grew in regularity as the game wore on.
Sokratis Papastathopoulos had to be alert to clear the ball away from Sobiech with Szabolcs Huszti also looming.
Papastathopoulos blocked Huszti again as Hannover started to make Dortmund sweat, but they held on for the points to move back up to second, ahead of Bayer Leverkusen on goal difference.