But Pedro matched Eriksen with a timely curled equaliser just before the break. Victor Moses continued his brilliant recent form by scoring the winner from close range to leave Chelsea a point above Liverpool and Manchester City.
Anthony Caci replied for the hosts before the break but Leon Goretzka's low shot sealed the visitors' win. Bayern are third in the table, two points adrift of Bayer Leverkusen and a point behind VfB Stuttgart.
City profited from slick break-aways, the first goal arriving when Kevin De Bruyne fed Aguero, who fired in. Again De Bruyne led a clinical counter after the break, finding Samir Nasri, who put Aguero clear to finish smartly.
Barcelona needed a point in Hamburg to advance from Group H with two matches to spare, but they were made to wait. Despite dominating possession, the visitors were unable to break down the Ukrainian champions.
After Olivier Giroud missed an early penalty Marco Reus made no mistake when Dortmund were given one of their own, but Samuel Chukwueze got his first goal since signing for Milan to make it 1-1 going into the break.
Arsenal staged a stunning late fightback to earn a point at Stamford Bridge just as Chelsea looked about to enjoy their finest victory under manager Mauricio Pochettino.
The visitors looked threatening on the break all game, with Jackson earlier spurning an even better chance from Malo Gusto's cross when a heavy touch allowed Ederson to smother his shot, and City's keeper also denied Sterling a second from point-blank
Pep Guardiola’s men were in total control after the break as Leeds tried to protect their lead, but Ferran Torres looked to have rescued a point when he steered Bernardo Silva’s pass into the bottom corner in the 76th minute.