Two goals from Jens Hegeler and a header from the Bundesliga's top goalscorer Stefan Kiessling earned Leverkusen a comfortable 3-1 win with Artur Sobiech grabbing a consolation for the visitors.
Hannover go into the final game of the season next week looking to defend ninth place from Wolfsburg and Stuttgart, but unable to challenge Borussia Monchengladbach above them for eighth.
Leverkusen were in front after just six minutes with Sebastian Boenisch sending Andre Schurrle away with a fine pass.
The Germany international, who is close to completing a move to Chelsea, raced away before squaring for Hegeler, who had the easiest of tasks to finish off the move.
Hegeler nearly made it two soon after, but Ron Robert Zieler turned his shot on to the bar with his fingertips.
Zieler then denied Schurrle with Kiessling missing the rebound before being denied by the Germany goalkeeper in a one-on-one situation.
It was only a matter of time before the second goal arrived, and it was Kiessling who got it with his 24th goal of the season.
He started the move by spreading play to Daniel Carvajal before moving into the middle to meet the Spaniard's cross with an unstoppable header.
Hannover emerged for the second half with a more positive approach and Mame Diouf headed their best chance of the game over the bar in the 53rd minute.
Hegeler made it three for Leverkusen in the 59th minute. Christian Pander lost possession to Lars Bender, who set up Hegeler to pick his spot inside the post, leaving Zieler no chance this time.
Sobiech reduced the arrears in the 71st minute with a shot which deflected off Carvajal on its way in.
However, the Reds were unable to mount a recovery as Leverkusen held on comfortably to open up a 10-point gap over fourth-placed Schalke.