The defending champions were on course for their first European defeat at the Etihad since 2018 when Lois Openda took advantage of shambolic defending to score twice in the first half.
Haaland reduced City’s arrears before goals from Phil Foden and Julian Alvarez secured top spot in Group G.
Despite having already secured their place in the last 16, Pep Guardiola still named a strong side with his focus on winning the group.
But the Catalan coach headed down the tunnel at half-time shaking his head at what he had seen from the European champions.
City dominated possession and territory but were undone by two moments of carelessness from the normally reliable Manuel Akanji and Ruben Dias.
The in-form Openda showed his poise after Akanji let the Belgian latch onto a long ball from Leipzig goalkeeper Janis Blaswich to finish past Stefan Ortega.
Haaland uncharacteristically snatched at a great chance to equalise as the Norwegian blasted over and Rico Lewis was also wayward with a clear sight of goal.
But as City camped in the Leipzig half, one more long ball caught out Guardiola’s men as Dias dived in and Openda galloped clear to score his 13th goal of the season.
Guardiola reacted at the break as Nathan Ake replaced Dias.
But it was not until two more changes with the introduction of Jeremy Doku and Alvarez that the comeback commenced.
Alvarez played a part in City’s first goal as he fed Foden, who played in Haaland to net his 40th Champions League goal in just 35 appearances in 54th minutes.
Foden then stroked home Josep Gvardiol’s pass from the edge of the box 20 minutes from time.
Leipzig thought they had retaken the lead when Liverpool loanee Fabio Carvalho slotted into the far corner, only to be flagged offside.
And City completed the comeback for a 27th win in 29 Champions League home games since they last tasted defeat.
Doku found Foden at the by-line and his low cross was controlled and finished by Alvarez for his fourth goal in as many Champions League appearances this season.
Leipzig had already secured their place in the last 16 but now risk facing the likes of Barcelona or Real Madrid in the knockout stages.
AFP