Leon Andreasen put Tayfun Korkut's men in front inside two minutes, but Martin Lanig swiftly brought the Eagles level. Lars Stindl wasted little time in restoring the Reds' advantage before Didier Ya Konan added a third. Hannover hit the woodwork twice before Alexander Meier set up a grandstand finish, but the visitors managed to hold on to move eight points clear of the drop zone.
Most of the fans inside the packed Commerzbank Arena were still taking their places when Andreasen connected with Christian Pander's cross to head Hannover in front, just the start the visitors needed after ending a four-game losing streak against Hamburger SV last weekend. It was almost cancelled out by Pirmin Schwegler's deflected 20-yard effort, but Ron-Robert Zieler was well-placed to diffuse the situation.
The hosts did level just ten minutes after falling behind, however, when Tranquillo Barnetta whipped in a free-kick from the left that missed everybody, apart from Lanig, who tapped home. The next twist in an entertaining opening then came back at the other end, from yet another free-kick. It was Pander again who delivered the cross and another header ended up in the back of the net, this time from Stindl.
It was the second goal in as many games for the midfielder, who was moved into a more advanced position by Korkut last weekend and appears to be revelling in his new role. It was the more conventional striker, Ya Konan, who added a third for Hannover just shy of the half-hour mark, though. Andreasen's beautifully cute pass made its way through to the Ivorian forward, who slotted his shot through the legs of Kevin Trapp to stun the home fans.
Joselu failed to exert the right to reply immediately, steering his shot over the crossbar with the goal at his mercy, before Frankfurt coach Armin Veh made a change with Schwegler replaced by Meier. The second half started almost like the first with Andreasen posing a huge threat, but the post came to Frankfurt's rescue this time.
It was then the crossbar that denied Szabolcs Huszti as the game worked up a frenetic pace, and there was plenty of drama still to come. Manuel Schmiedebach thought he had grabbed his first ever Bundesliga goal as he headed Huszti's cross goalwards, but the ball was adjudged not to have crossed the line as Alexander Madlung made a last-gasp clearance.
At the other end, Sebastian Jung's cross was headed inches wide by Lanig just minutes before Meier showed him the error of his ways, powering Stefan Aigner's cross past Zieler to set up a thrilling final quarter. Tactics went out of the window as Frankfurt poured forward in search of an equaliser, leaving them open to the counter-attack. Five minutes of injury time proved too little for Armin Veh's men, however, and Hannover were able to see out a crucial away win.
Line-ups and statistics