Haaland was keen to make amends for a frustrating night in front of goal as City were held 1-1 at home by Chelsea on Saturday.
But the Norwegian was made to wait until 19 minutes from time to break the deadlock when he raced onto Julian Alvarez’s pass to slot in his 22nd goal of the season.
Pep Guardiola left Kevin De Bruyne on the bench for the entire match as he manages the Belgian’s minutes after he missed the first five months of the season due to a hamstring injury.
De Bruyne’s ingenuity was missed as City struggled to make their domination count despite enjoying nearly 70 percent possession and having 25 shots on goal.
The Bees were the last visiting side to win at the Etihad 14 months ago and had their chances to spring another huge surprise.
Frank Onyeka failed to beat Ederson when one-on-one midway through the first half before Ivan Toney sent a dipping free-kick inches over the bar.
The vast majority of goalmouth action was coming at the other end, though, as Mark Flekken kept Brentford in the game.
Flekken was stretched into fine stops from Manuel Akanji and twice from Ruben Dias.
Oscar Bobb came closest to opening the scoring in the first half, on a rare start for the Norwegian youngster, when his effort was cleared off the line by Ben Mee.
Bernardo Silva also headed a glorious chance wide as Thomas Frank’s men held out until the break.
Liverpool and Arsenal’s hopes of a second unlikely gift from City in the title race in four days would have been raised by a quiet start to the second period.
However, City remain well in the hunt to become the first side ever to win four consecutive English top-flight titles for a reason.
One slip by Brentford defender Kristoffer Ajer provided the moment Haaland had been waiting for as he galloped clear on goal and kept his composure to score for just the third time in his last eight games.
City should have extended their advantage, especially as goal difference could yet prove decisive in the title race.
Phil Foden scored a hat-trick when the sides met earlier this month in City’s 3-1 win in west London.
But the England international was denied twice late on by Flekken as the goalkeeper tipped over a blistering shot and then stood up well to block as Foden tried to go round him.
© Agence France-Presse
Photo: Twitter @OptaJoe