Pierre-Emerick Aubameyang grabbed a brace before a Robert Lewandowski penalty early in the second half effectively sealed Dortmund's win.
New signing Milos Jojic then came on to score his first Dortmund goal as the Westphalians increased the pressure on second-placed Bayer Leverkusen in the pursuit of runaway league leaders Bayern Munich.
Dortmund needed 82 minutes to break down Frankfurt when these two sides met in the DFB-Pokal on Tuesday night, but it took just 10 for them to break the deadlock this time around.
After Henrikh Mkhitaryan saw his shot turned behind by Constant Djakpa with Kevin Trapp beaten, the Armenian forward turned provider for Aubameyang, who had a simple finish from close range to add to his decisive goal in the cup.
Lewandowski failed to beat Trapp in a one-on-one situation as Dortmund looked to wrap things up early on, and they just about did that in the 21st minute when Manuel Friedrich sent the ball in for Aubameyang to net his 13th goal of the season - joining Lewandowski as Dortmund's top goalscorer in the process.
Lewandowski wasted the chance to move back ahead of Aubameyang when he missed his next one-on-one with Trapp, but he did not pass up on his third opportunity of the afternoon from the penalty spot early in the second half.
He was fouled by Djakpa in the box and stepped up to get the better of Trapp to put the result beyond doubt.
Klopp decided to give Jojic his first piece of the action following his arrival in the winter, and within 20 seconds of taking to the field as a replacement for Mkhitaryan, he had already opened his account.
Kevin Grosskreutz's shot turned in to an assist for the newcomer, who settled into his new surroundings immediately.
Lewandowski wasted yet another chance to beat Trapp before being removed by Jurgen Klopp with Dortmund's victory beyond doubt.