Haaland had the chance to set the four-time defending champions on course for only their second win in 13 games when stepping up for a 53rd minute spot-kick at the Etihad Stadium.
But he was denied by Everton goalkeeper Jordan Pickford as City's woeful recent run was extended.
Pep Guardiola's team had lost nine of their last 13 games in all competitions and this draw means City picked up only their fifth point in the league since the end of October.
Bernardo Silva's deflected shot gave City the lead in the 14th minute, but Iliman Ndiaye levelled in the 36th.
City boss Pep Guardiola said: "We played really good, but we are in a period right now that this is what happens. But yeah, keep going."
Haaland has now only scored once in his last seven games. He headed in from the rebound, but the goal was ruled out for offside.
Later, Rodrigo Muniz struck in the fifth minute of stoppage time as Fulham snatched a superb 2-1 victory to dent Chelsea's title hopes.
Cole Palmer sent Chelsea ahead just 16 minutes in before a late charge saw Marco Silva's side earn three points over their west London rivals when Harry Wilson levelled and Muniz found a late winner.
Chelsea sit second in the table, only one point above in-form Nottingham Forest, who beat Tottenham 1-0 at the City Ground.
Anthony Elanga's goal earned Forest three points but Spurs' afternoon soured further when Djed Spence was sent off in stoppage time as Ange Postecoglou's side were handed their fifth defeat in eight Premier League games.
Embattled Australian Postecoglou is under growing pressure as Spurs now languish in the bottom half of the table after a first Boxing Day defeat since 2003.
"It was always going to be a tight game here," Postecoglou said.
"A disappointing goal we conceded, but aside from that the boys worked hard and we tried to generate as many opportunities as we could considering the context of the game and how Forest play. We just couldn't get over the line."
Newcastle moved up to fifth in the table after beating 10-man Aston Villa 3-0.
Fulham's Rodrigo Muniz (c) is congratulated by teammates after his late winner stunned Chelsea. (AP PHOTO)
Anthony Gordon sent the Magpies ahead 80 seconds into the game before the visitors were handed a blow when Jhon Duran was dismissed with a straight red card after making contact with Fabian Schar's back.
Alexander Isak scored his 12 goal of the season before Joelinton wrapped up a fourth straight win in all competitions.
New Southampton boss Ivan Juric got off to a losing start in his first game in charge after his side were beaten 1-0 by West Ham.
Jarrod Bowen's close-range strike was enough to secure a second win in four games for the Hammers, who move into 13th, although their goalkeeper, Lukasz Fabianski, was taken off the field on a stretcher after sustaining an injury.
Elsewhere, Bournemouth extended their unbeaten run to six Premier League games with a goalless draw against Crystal Palace.