Manchester City boss Pep Guardiola praised the 'never-say-die' attitude of his players after inflicting a first defeat on his Everton counterpart Carlo Ancelotti.
Two second-half goals from Gabriel Jesus were enough to close the gap on runaway leaders Liverpool to 11 points, who also have two games in hand, while leaving them just one point behind second-placed Leicester, who won 3-0 at Newcastle.
It meant nine points from a possible 12 over the festive period with the dropped points at Wolves appearing to signal an end to City's title defence.
"We played top, I am so delighted about the performance," said Guardiola. "Teams who have been champions and are far away from the leaders can give up and finish seventh or eighth. Maybe we will but not because we don't try.
"We played great so I'm delighted for the guys. This period is so tough. We did really well. Three more points and closer to Leicester."
City were stifled by a well-drilled Everton defence in the first-half but Brazilian maestro Jesus relieved the frustration with a curling right-footed shot from the edge of the box and then seven minutes later rifled a low effort home from a Riyad Mahrez pass.
The visitors ensured a nervy finish when stand-in keeper Claudio Bravo's misplaced pass out of defence was intercepted by Theo Walcott and his deflected attempt fell invitingly for Richarlison to halve the arrears.
By Russell Stoddart
Photo: Getty Images