Ashley Williams scored a late winner for Everton as they came from behind to win 2-1 and inflict a first Premier League defeat on Arsenal since the opening day of the season.
Alexis Sanchez had fired the Gunners into a 1-0 lead with his 12th league goal of the campaign early on but Everton bagged an equaliser through Seamus Coleman before half-time, with Williams then completing the turnaround with an 86th minute header.
Arsene Wenger's side missed out on the chance to move top of the table with the result, with Everton moving two places up to seventh and securing a first victory in six games.
Arsenal created the first chance of the game inside the seventh minute, with Nacho Monreal pulling the ball back to Mesut Ozil in the middle, but the German could only send his effort over the bar.
The Gunners, however, found the breakthrough after 20 minutes as Sanchez's free kick took a wicked deflection off Ashley Williams, leaving Maarten Stekelenburg unable to keep the ball from flying across the line.
A subdued Everton had struggled in the final third up until the half-hour mark, with Arsenal looking comfortable, when they created their first real opportunity as Enner Valencia headed Ross Barkley's corner over.
Buoyed by that chance, and with the Goodison Park crowd now behind them, the Toffees continued to threaten with Aaron Lennon driving into box but firing high and wide, before Romelu Lukaku then sent a strike over a few minutes later.
Everton were managing to disrupt Arsenal's early rhythm and Lennon again came close for the hosts on 39 minutes, this time striking wide from a good position after Monreal had failed to clear a set piece.
And Ronald Koeman's men were rewarded for their pressure on the stroke of half-time when Leighton Baines whipped a ball into the Gunners box, with Coleman rising unmarked to head into the corner past Petr Cech.
The visitors had a great chance to restore their lead nine minutes after the restart when Sanchez got to the byline and dragged the ball back to Ozil but the midfielder leant back and pulled his strike over.
Everton could well have taken the lead themselves soon after when Barkley drove towards the Arsenal box before rifling an effort at goal, only for the ball to sail just wide of the post.
Wenger's side attempted to up their game in the final third as the second half wore on, but a resilient Everton defence were able to dig in deep at the back.
And the Toffees also looked dangerous on the counterattack with Gabriel Paulista having to recover to thwart Lukaku in the box, while Alex Iwobi was forced into a desperate clearance a few moments later.
Iwobi was soon involved down the other end for Arsenal as both teams went in search of the winner, but his strike hit the side netting after Sanchez had found him inside the area.
Four minutes from time, however, and Everton had found the decisive goal as Williams arrived unmarked to head home a corner past Cech to send Goodison Park wild.
There was still time for Toffees captain Phil Jagielka to receive his marching orders, with the defender picking up a second yellow card for tripping up Lucas Perez, while in the final seconds Iwobi had a strike cleared off the line.