Mikel Arteta’s men have now secured back-to-back wins that brightens their chances of getting into Europe next season.
Pierre Emerick-Aubameyang joined Jamie Vardy at the top of the goalscoring chart with two goals on the day.
The visitors took the lead in a trice, scoring after just 50 seconds on the clock when Dominic Calvert-Lewin struck an overhead kick into the bottom corner of Bernd Leno’s net after David Luiz failed to properly deal with a free-kick.
The Gunners got their equaliser through Eddie Nketiah, who beautifully steered home substitute Bukayo Saka’s wonderful cross in the 27th minute to draw Arsenal level.
Six minutes later, the home side had their noses in front through skipper Aubameyang. Luiz was allowed far too much space to bring the ball out of defence, and the Brazilian’s through pass found the Gabonese international, who opened up his body and found the far corner with his finish.
Arsenal’s defensive frailties showed once more on the cusp of halftime when they failed to deal with another set piece into the box and Richarlison reacted quickest to nick the ball past Leno.
If Everton scored early in the first half, Arsenal scored even earlier in the second when Aubameyang headed in Nicolas Pepe’s right wing cross 24 seconds into the second half for his 17th league goal of the season.
Leno came to Arsenal’s rescue with a point-blank save to deny Calvert-Lewin in the 74th minute following a goalmouth scramble.
Everton nearly played themselves into trouble as Arsenal won possession on the edge of the visitors’ box and Nketiah struck the crossbar with a fierce strike in the 88th minute.