Pierre-Emerick Aubameyang's stunning free-kick settled a cracking clash at Emirates Stadium.
John McGinn put Villa ahead after 20 minutes with a glancing finish from a great Anwar El Ghazi cross after an open, free-flowing start.
Arsenal right-back Ainsley Maitland-Niles was booked for a cynical foul on Jack Grealish in the 11th minute after Villa countered and left Arsenal exposed. It would be an early foul that would come back to haunt them after Maitland-Niles was given a second booking in a 50-50 challenge where he was deemed to tackle left-back Neil Taylor high despite winning the ball first. It looked to be a tough call on Maitland-Niles, who was also injured in the challenge.
Granit Xhaka slotted in at right-back for the remainder of the half and worryingly, he was also already on a booking.
At the break, Unai Emery sacrificed youngster Bukayo Saka, the third youngest starter in Premier League history for Arsenal, and introduced Calum Chambers who went straight into the right-back slot and Xhaka returned to the base of midfield.
On 59 minutes, Arsenal received a lifeline when Björn Engels fouled the impressive Matteo Guendouzi after the young Frenchman charged into the box and Ivorian attacker Nicolas Pépé slotted the resulting penalty right down the middle to bring Arsenal level. It was the Gunners' record signing's first goal for the club.
Less than 90 seconds later, Arsenal was caught by a sucker punch as Grealish waltzed through the Arsenal midfield and defence unopposed and the talented skipper fired in a low cross for Brazilian Wesley to tuck home smartly and Villa hit the front.
Villa retreated deeper and deeper after the goal, inviting Arsenal pressure onto their back four. Unai Emery made a double switch on 72 minutes with Lucas Torreira and Joe Willock coming on for Dani Ceballos and Granit Xhaka respectively. The new duo almost combined immediately to force an equalizer.
On 81 minutes, substitute right-back Calum Chambers hit a first time Guendouzi cross across the face of goal but it was deflected to Tyrone Mings who headed back poorly and Chambers got to it first, took a touch and poked it into the top corner to make it 2-2.
Three minutes later, Gabon superstar Pierre-Emerick Aubameyang stepped up to a free-kick just outside the box and rifled it beyond Tom Heaton to make it 3-2 to Arsenal, who held on for the win.
Gunners fans can finally breathe again after a chaotic Sunday clash which saw them pick up their first win in three matches.
Next up for The North London men in the Premier League is a trip to Old Trafford next Monday to face Manchester United. Next on their immediate calendar is a League Cup tie with Nottingham Forest.
⬇️ Get the latest Arsenal FC Live scores, commentary, results and stats on the Futaa Live App, with over 1000 teams, 100+ leagues and the lowest data usage. Download it now at the Google Play store, it’s only 3mb!
Read More: Ex-Arsenal manager Wenger lands new job