With in-form goalscorer Ilkay Gundogan missing through injury, it was fellow midfielders Phil Foden, Riyad Mahrez and Bernardo Silva who stretched City's winning run to 17 games in all competitions.
Mahrez struck a sublime second for City in the second half, his fourth league goal on this ground, after a fortuitous Richarlison effort had cancelled out Foden's deflected opener.
Silva's third 13 minutes from time – shortly before Kevin De Bruyne made a return from injury off the bench – ensured Carlo Ancelotti's side has only won twice in eight league games in 2021, and its season is in danger of unravelling.
City controlled the first half-hour but Everton limited them to few chances, with Michael Keane covering well to deny Gabriel Jesus the clearest opening.
The Toffees went behind in unfortunate fashion 32 minutes in, Foden's right-foot shot flying past Jordan Pickford via a big deflection off Seamus Coleman.
The lead last only six minutes, though. Coleman's cross from the right was smashed goalwards by Lucas Digne – Everton's first shot of the match – and the ball came back off the post and bounced in off Richarlison's knee.
The second half followed a similar pattern, Jesus and Rodri each missing the target from presentable chances, although Gylfi Sigurdsson led two promising breaks for Everton that should perhaps have yielded more.
City's pressure told 63 minutes in, Mahrez cutting in from the right and curling a superb strike in off the left-hand post after Silva had created some space.
Silva capped a fine performance with the decisive third, collecting Jesus' lay-off, working space on the edge of the box and firing in a shot that Pickford could only parry into the net.