After Lukasz Piszczek gave the hosts a 33th-minute lead, Sancho and Haaland struck in the space of five minutes early in the second half.
England forward Sancho registered his 12th goal in his last 14 games while Norway striker Haaland netted his ninth in six matches since joining from RB Salzburg last month.
In the process, the Leeds-born 19-year-old became the first player in Bundesliga history to score eight times in their first five outings.
Raphael Guerreiro rounded off the scoring with a rocket 16 minutes from time to ensure Dortmund responded to back-to-back defeats in all competitions.
Atletico Madrid's indifferent LaLiga form was extended following a 2-2 draw at Valencia.
But Valencia equalised again in the 59th minute through Geoffrey Kondogbia, leaving fourth-placed Atletico 12 points off leaders Real Madrid after winning just one of their last five league matches.
Monaco moved up to fifth in Ligue 1 after beating Montpellier 1-0.
On-loan Leicester striker Islam Slimani netted seven minutes after half-time to give Monaco a third straight win and leapfrog their opponents in the table.