The Spaniard had given the Gunners an early lead after five minutes, before Andreas Weimann equalised for the visitors mid-way through the second-half.
But Cazorla was at the ready to slot home with just minutes to go as the Gunners closed the gap on fourth-placed Tottenham to one point, extending Villa’s miserable run to just one win in 10 games.
Wenger made four changes from his side’s 3-1 humbling at the hands of Bayern Munich on Tuesday, with Nacho Monreal returning at left-back and Carl Jenkinson replacing the injured Bacary Sagna. Giroud was also re-installed to lead the line, while Abou Diaby came in for Aaron Ramsey.
ARSENAL 2-1 ASTON VILLA
From the off, it was all Arsenal. The hosts controlled possession with palpable ease and created the first chance of the game after just two minutes, with Jack Wilshere forcing an early save from Brad Guzan.
And the Gunners did not have to wait long to open the scoring as Cazorla found possession minutes later, tucking away an easy finish at the second time of asking. Nathan Baker had blocked the Spaniard’s initial attempt at a cross but Cazorla showed no hesitation in reacting first to convert.
But Villa responded instantly, mustering their first chance of the game after nine minutes as Charles N’Zogbia fed Agbonlahor on the edge of the box, only for the 26-year-old to fire his shot straight at Wojciech Szczesny.
After the Gunners’ emphatic start, a cricket score had looked a possibility but Villa were the side looking more and more likely to score. Close to the half-hour mark, the visitors enjoyed their best chance yet as N’Zogbia was first denied by Szczesny before Andreas Weimann then had his shot cleared by Per Mertesacker.
Theo Walcott curled a left-footed shot over the bar minutes later, before Giroud was then denied by Guzan once again as half-time approached.
| PREMIER LEAGUE LATEST
|4/5||Aston Villa are 4/5 to be relegated with BetVictor
And on 68 minutes, Villa made their sharpness on the break tell as Weimann ended a fantastic move with a strike from range – all of which started from an Arsenal corner. Szczesny could have done better between the sticks but it was the speed at which the visitors broke that really caught the home side off-guard.
With the equaliser came tension at the Emirates. The home crowd were anxious and Wenger knew they would settle for nothing less than a win.
The Frenchman responded by replacing Jenkinson with Lukas Podolski in an extremely attacking move. Yet it was Cazorla who again made the difference late on as the Spaniard found himself unmarked on the penalty spot after a Monreal cross to fire home the winner for his side.