Chile midfielder Arturo Vidal struck in the 58th minute and Thomas Mueller netted from close range 11 minutes from time in Dortmund in the curtain-raiser to the German season which begins in two weeks.
The win ended a run of three consecutive pre-season Super Cup defeats under Ancelotti’s predecessor Pep Guardiola, twice to Dortmund.
“I am satisfied. It was, of course, difficult,” Ancelotti told Germany’s ARD television.
“Dortmund played very, very well in the first half but we played a lot better in the second half and this gives us confidence for the new season.”
Dortmund coach Thomas Tuchel is meanwhile still without a title in his coaching career.
“Congratulations to Bayern and Carlo Ancelotti,” Tuchel said.
“It was an unfortunate defeat. We invested a lot and the energy on the pitch was good. Unfortunately we then made some small errors. I am very satisfied though with what the team showed.”
Tuchel left new signings Mario Goetze and Andre Schuerrle on the substitutes’ bench, while Ancelotti had central defender Mats Hummels starting for Bayern after his summer move to Dortmund – to be greeted with jeers from Dortmund’s faithful every time he touched the ball.
The home side created the early chances, with newcomer Ousmane Dembele seeing a shot blocked by keeper Manuel Neuer, who minutes later did well to save from Adrian Ramos.
The fierce recent rivalry between last season’s champions and runners-up threatened to boil over just before the half hour when Bayern’s Franck Ribery took a couple of swipes at Felix Passlack who was harrying the French winger from behind.
After consulting with his linesman, referees Tobias Welz showed both players a yellow card to the anger of the home crowd who clearly felt Ribery should have been shown red. Bayern’s Xabi Alonso also went into the book for dissent.
Bayern did not have a shot on goal until Vidal saw a long-distance effort trundle wide of the post in the 37th minute. But the Chile midfielder found himself a minute late with a free header in front of goal from a Javi Martinez cross, only for keeper Roman Buerki to parry.
The keeper also had to thwart a Robert Lewandowski as Bayern began to look more dangerous towards the end of the half.
Neuer turned a fierce Passlack shot away for a corner five minutes after the break, while Dembele showed his skill on the ball by sidestepping two Bayern players before getting in a deflected shot which Germany’s keeper turned round the post.
But it was Vidal who broke the deadlock against the run of play when Bayern caught Dortmund cold down the left.
Lewandowski sent the ball across the area, Mueller let the ball pass and Vidal stormed through the middle to see his first shot blocked by Buerki, only for the Chilean to follow up and convert the rebound.
Ribery went off to jeers in the 65th minute, with fellow Frenchman Kingsley Coman his replacement, while Tuchel made a double substitution, bringing on Germany internationals Schuerrle and Julian Weigl for Dembele and Ramos.
Vidal had to leave the field with an apparent foot injury with some 20 minutes remaining, to be replaced by Joshua Kimmich. The substitutions continued when 19-year-old Emre Mor came on for his debut for Dortmund with 12 minutes remaining to replace Pierre-Emerick Aubameyang, Tuchel thus leaving Goetze on the bench.
The game was effectively over a minute late when Hummels headed the ball down from a corner and Mueller in front of goal turned the ball over the line.
Source: GNA/News Ghana