Henrikh Mkhitaryan scored both goals for Jurgen Klopp's men, who looked far from their best, especially defensively, as Vaclav Kadlec scored for the hosts.
The win takes Dortmund two points clear of Bayern Munich who have won three and drawn one of their first four games.
These two sides shared six goals when they met at the Waldstadion last season and it looked like it could be a similar story again with both attacks looking sharp and the defences looking susceptible.
Frankfurt had the first chance after three minutes when Takashi Inui was left in too much room at the far post, but Roman Weidenfeller came to Dortmund's rescue with an instinctive block.
At the other end, Jakub Blaszczykowski shot over before he provided the assist for Mkhitaryan's first Bundesliga goal.
The Armenian did not even need a touch to compose himself as he met Blaszczykowski's pass with a neat side-footed finish in the 10th minute.
For all their threat in attack, Dortmund always looked capable of conceding at the other end, and that nearly happened in the 31st minute when Kadlec was through with only Weidenfeller to beat, but the Dortmund goalkeeper was alert once again.
Weidenfeller was beaten by Stefan Aigner five minutes later with the post coming only temporarily to his rescue since the rebound fell out for Kadlec to bring the Eagles level.
Frankfurt took heart from the goal and they emerged the more hungry in the second half, forcing a succession of corners.
Out of nothing though, Dortmund regained the lead in the 56th minute.
Nothing seemed to be on as Mkhitaryan paraded the ball from right to left across the perimeter of the penalty area, but as soon as a small gap emerged, he picked his spot low in the bottom left-hand corner of the goal.
Dortmund, who had replaced the insecure Mats Hummels at half time with Sokratis Papastathopoulos, continued to ride their luck with Anderson Bamba heading a corner against the post.
They held on to move clear at the top for at least a fortnight, due to the break for internationals.