Everton threatened early on but Jesus put the host in front in the 22nd minute with his first league goal since August – latching on to Leroy Sane's through ball and sliding a finish under Toffees keeper Jordan Pickford, BBC Sport reported.
That came after the visitor should have taken a 15th-minute lead through Richarlison but the Brazilian volleyed Lucas Digne's cross over the bar from seven yards.
Five minutes after halftime Jesus powerfully headed in his second from a pinpoint Sane cross.
Dominic Calvert-Lewin pulled a goal back for the visitor with a 65th-minute header but just four minutes later substitute Raheem Sterling regained City's two-goal lead.
Three minutes after coming off the bench, the England forward was left unmarked in the six-yard box to head in a cross from Fernandinho to score with his first touch.
Midfielder Kevin de Bruyne, who has been out with a knee injury, came on as a substitute in the 75th minute for his first appearance since November 1.
The win takes City two points clear of Liverpool, which will return to the top of the table if it beats Manchester United at Anfield today.