Leon Osman continued Everton's jinx over Manchester City as his second-half winner sealed a 2-1 comeback victory that dented the visitors' push for a Champions League place.
Everton completed the double over their mega-rich opponents, and made it seven wins from their last eight games against them, after Osman capped the turnaround at Goodison Park here on Saturday.
It looked as though Roberto Mancini's side were heading for another win to edge even closer in their pursuit of a top-four finish thanks to Yaya Toure.
But they spurned a glut of chances to kill off Everton for good and were punished after the break.
Sylvain Distin headed home Mikel Arteta's 65th-minute free-kick before Osman timed his run to perfection to convert Phil Neville's cross with a fine looping header.
It was a missed chance for City and left Tottenham and Liverpool with a chance of sneaking into the top-four positions.
City looked like a side bidding to finish the job in a hurry at the start.
David Silva expertly took Vincent Kompany's long pass out of the air before twisting his marker inside and out and driving inches wide in the 11th minute.
The Spaniard continued to threaten and three minutes later he created a chance that should have resulted in the opening goal.
Silva's cushioned pass landed straight into the path of the on-rushing Patrick Vieira but the veteran Frenchman's shot from five yards out sailed over the crossbar.
Everton, who have seen their European hopes all but extinguished, were performing like a side that had nothing but pride to play for.
But the home crowd certainly had something to shout about in the shape of former Everton player Joleon Lescott.
The defender, returning to Goodison for the first time since his acrimonious £22 million ($36m) exit in 2009, was roundly jeered with every touch.
However, Lescott saw his current side take a lead via Toure in the 28th minute.
Distin failed to cut out Nigel de Jong's pass and Silva fed the Ivory Coast midfielder, who did the rest by lifting the ball over Everton's United States international goalkeeper, Tim Howard.
It was no more than City deserved although their dominance only resulted in a one-goal margin at the break.
Everton brought on striker Jermaine Beckford after half-time as they looked for a more positive approach. Yet the change opened up more space for City.
Toure, with his lung-busting runs from midfield, was denied a second goal by the giant frame of Howard in the 50th minute.
But Everton's more competitive approach was illustrated when Jack Rodwell's lunging tackle on de Jong sparked an eight-man shoving match as tempers threatened to boil over.
City were made to pay for spurning those chances, with Distin steering home Arteta's free-kick as England goalkeeper Joe Hart failed to turn the defender's header around the post.
It got worse for City as Osman headed home seven minutes later. This time Hart was left with no chance as the midfielder timed his run superbly to nod in Neville's chipped cross.