Manchester City did not have things completely their own way against Everton, so in emerging with the win the champions illustrated why they remained title favourites despite losing top spot last Saturday. They also leapfrogged Liverpool to become leaders again, at the very least until Manchester United visit Anfield on Sunday.

Everton arrived as the only side not to lose here in the two league outings since Pep Guardiola took over and left with that record shredded. City achieved this by retaining the relentlessness that steamrollers most opponents and that finally wore down their visitors’ resistance.

Manchester City’s Pep Guardiola praises Raheem Sterling’s calmness Read more

This was among City’s more impressive displays this season following the defeat at Chelsea and the 2-1 victory over Hoffenheim in midweek that meant they won their Champions League group but had only two days to prepare.

City were again without Kevin De Bruyne and Sergio Agüero in their starting lineup, though both were back in the match-day squad after injury and the former made a 15-minute appearance as a second-half substitute.

Guardiola said: “It was a tricky game, a dangerous game after the CL with less than three days’ recovery. It was something in our minds that we were going to suffer in this game.”

In all he made four changes. Out went Raheem Sterling, John Stones, Oleksandr Zinchenko and Phil Foden. In came Fabian Delph, Riyad Mahrez, Fernandinho and Kyle Walker. For Everton Idrissa Gueye and Theo Walcott made way for Kurt Zouma and Dominic Calvert-Lewin.

The temperature was close to zero yet the football contained some heat. Everton gave an early warning when Calvert-Lewin got behind the defence and shot, though he was ruled offside. City’s riposte was a slide-rule Ilkay Gündogan ball that set Leroy Sané racing in behind. With Gabriel Jesus available in the area the German turned inside and lost control.

Manchester City 3-1 Everton: Premier League – as it happened Read more

After a sweet Jesus turn that had Zouma scrambling and just about recovering Sané was in again. This time Fernandinho had the vision but Sané’s touch was faulty once more.

Walker was the next City man to commit an error and it was nearly costly. The right-back dawdled and Lucas Digne turned pickpocket. The left wing-back lobbed in the ball but Richarlison lost composure. Further Everton thrust came from a Bernard breakaway along the left flank: the attack came to nothing but did provoke a concerned Guardiola to leave his seat for the technical area.

City ratcheted up the pressure, which led eventually to Jesus’s opener. Fernandinho’s chipped ball had Mahrez driving past Digne, causing him to foul the Algerian, for which he was booked. The subsequent free-kick went to Delph but his 20-yard shot was always rising.

Facebook Twitter Pinterest Gabriel Jesus plants his header past Jordan Pickford for his and City’s second goal. Photograph: Clive Brunskill/Getty Images

Next came two corners in quick succession and then Jesus’s sixth club goal this season. Offering the champions presents is folly, whether or not it is yuletide. Yet Everton did exactly this when Yerry Mina hoofed the ball from near his goalline straight to Gündogan. The German’s pass went instantly to Sané, his in turn went to Jesus and the Brazilian beat Jordan Pickford from a tight angle to break a four-month drought in the league.

At this juncture Everton refused to go under despite the light blue wave that advanced relentlessly. A rare foray by the visitors was halted by some classic Fernandinho midfield-general play that turned the ball over and defence into attack; when City needed to fight and become more rudimentary they could and would. Without the Pickford acrobatics that saved a Mahrez rocket of a volley from close in Everton would have entered the break 2-0 behind.

Football should not carry the can for society’s ills – but can help to remedy them | Barney Ronay Read more

Instead they began the second half still in the contest. Almost inevitably, though, City were the aggressors as Jesus and Sané got in along the left, the ball was turned back to Fernandinho though his pot-shot was off-target.

Play Video 0:41 'I admire him': Pep Guardiola on Raheem Sterling – video

They doubled the lead with a goal beautiful in its simplicity as Sané dinked a cross from the left and Jesus’s header gave Pickford scant chance. This turned Everton’s challenge from molehill to mountain and Marco Silva brought on Walcott and Ademola Lookman for Bernard and Coleman. As City’s second was again aided by a defensive problem – no one got in Jesus’s face – whether fielding two fresh attackers could salvage the game remained to be seen.

More defensive laxity seemed to give the answer as Gündogan played a one-two with Mahrez and had time to take aim at Pickford’s goal. He missed and, when comedy City defending by Nicolás Otamendi gave the ball to Digne, Everton pounced. In came the cross and Calvert-Lewin headed past Ederson. If this suggested the match was back on, the sense lasted only moments. Sterling had replaced Sané and after interplay between Jesus and Fernandinho the latter crossed and Sterling headed home his ninth league goal of the season.

De Bruyne came on for Mahrez to make a first appearance since 1 November and there was also time for a contretemps between Ederson and Mina. Now, it is over to Anfield for the next instalment of the title race.