The result gave the leaders 28 points from 11 games, four ahead of second-placed Mainz 05 who slumped to a 1-0 defeat at Freiburg on Saturday.
Bayer Leverkusen moved up to third on 21 points after coming from a goal down to beat Kaiserslautern 3-1 while VfB Stuttgart climbed out of the drop zone with a scintillating 6-0 romp against Werder Bremen.
In a one-sided game Dortmund's Shinji Kagawa gave the visitors an early lead. Lucas Barrios added another goal in the 72nd minute before substitutes Robert Lewandowski and Jakub Blaszczykowski completed the rout.
Dortmund have now piled up a league-high 27 goals while conceding only seven, also a Bundesliga best.
"We deserved this win today but maybe the score is a bit flattering," said coach Jurgen Klopp. "Our second goal was the turning point and I think Hanover lost confidence after that."
Kagawa, a revelation this season after joining Dortmund from the Japanese second division for 350,000 euros, drilled in his fifth league goal of the campaign in the 11th minute after slicing through the defence.
Hanover never recovered and had only one real chance, a thunderous Didier Ya Konan drive in the 40th minute that sailed wide.
With the hosts constantly on the back foot, Paraguay international Barrios notched his sixth league goal of the season in the 72nd minute from close range.
Hanover were then reduced to 10 men when Karim Haggui was sent off for aiming a kick at Blaszczykowski's head.
Keeper Florian Fromlowitz saved the subsequent Nuri Sahin penalty but was helpless when Lewandowski fired in from 10 metres in the 81st minute.
Blaszczykowski was then picked out by Antonio da Silva with a dream pass and had no trouble beating the Hanover keeper in stoppage time.
Sidney Sam scored twice as Leverkusen battled back to beat Kaiserslautern and leapfrog Eintracht Frankfurt in the table.
Stuttgart rose to 14th with their second win in three games as they ripped Werder apart.
Germany international Cacau struck twice and Ciprian Marica, Christian Gentner, Georg Niedermeier and Arthur Boka were also on target for the hosts.
Werder, stuck in 11th spot on 14 points, saw Torsten Frings's first-half penalty saved when the score was 1-0.
Cacau was also denied by keeper Tim Wiese from a 61st-minute spot-kick.
Get the best features, fun and footballing frolics straight to your inbox every week.
Thank you for signing up to Four Four Two. You will receive a verification email shortly.
There was a problem. Please refresh the page and try again.