
Goals by Gabriel Magalhaes and Martin Zubimendi early in the second half gave Arsenal control of a game that looked fraught with danger against a Villa side on an 11-match winning streak.
Defender Gabriel bundled in the opener from a corner in the 48th minute before Arsenal captain Martin Odegaard slid a pass through for Zubimendi to score four minutes later.
Arsenal secured the points when Leandro Trossard fired home from the edge of the area before Gabriel Jesus came off the bench to add the fourth.
Ollie Watkins grabbed a consolation goal for Villa in stoppage time.
Arsenal moved five points clear of second-placed Manchester City, who can close the gap when they go to Sunderland on Thursday.
Villa, who will rue not getting ahead in an impressive first half, stayed in third place, six points adrift of Arsenal after their first defeat for nearly two months.