Gunners manager Arsene Wenger had failed to land any major summer transfer targets, but that did not stop his side racing into an early lead through Olivier Giroud.
However, Villa - who spent much of last season battling against relegation - hit back when Christian Benteke equalised from a penalty rebound.
The visitors were awarded a controversal penalty on the hour when Koscielny looked to have won the ball in his challenge with Gabriel Agbonlahor, before Benteke netted from the spot.
The France defender, booked for his challenge by referee Anthony Taylor, was then soon shown a second yellow for clattering into Andreas Weimann
Arsenal, who face a crucial Champions League play-off first leg away to Fenerbahce next week, rallied with 10 men, but were not able to break down a determined Villa defence, as goalkeeper Brad Guzan made a couple of smart saves.
Antonio Luna added a late third for the visitors before unhappy chants of "spend some money" rang out from the home support at full-time.
The match was also notable for featuring the first use of the Premier League's new goal decision system (GDS) when a 52nd-minute effort from Aston Villa midfielder Fabian Delph struck the inside of the right-hand post and rolled across the line.
GDS came into play as television replays shown in the press box showed the referee Taylor had been notified that the ball did not cross the line at any point.
Arsenal has started brightly and it was no surprise when they swept into the lead on six minutes.
Alex Oxlade-Chamberlain broke down the left and the England midfielder cut the ball back across the six-yard box where Giroud guided it into the far corner.
Villa, though, were level on 22 minutes. Agbonlahor cut through the centre of the Arsenal defence and darted in on goal. Goalkeeper Wojciech Szczesny was out quickly, but could only pull down the Villa forward as they went for the loose ball, which dropped to Weimann and he could only fire it into the side-netting.
Play was correctly called back by referee Taylor for a penalty, with the Arsenal keeper fortunate to have only been shown only a yellow card.
Benteke struck the penalty low to the left where Szczesny made a superb save, only for the ball to bounce back up and the Belgian striker headed in.
Suddenly the atmosphere of the match changed, with plenty of heavy tackles from both sides to test the referee's patience.
Arsenal then had to make a substitution as Kieran Gibbs suffered a cut above his eye and, with blood pouring from his head, was replaced by Carl Jenkinson on 29 minutes.
Villa captain Ron Vlaar and Arsenal midfielder Jack Wilshere then squared up after a clash on the half-way line, with both men booked.
Szczesny lost his cool after rushing out to make a hash of his clearance, which he then headed away. The Polish keeper went on to tackle Benteke before darting back into his goal to produce a full-length diving save as Ashley Westwood's 25-yard drive looked to be floating in.
Arsenal made a change at the start of the second half when the lively Oxlade-Chamberlain, who looked to have picked up a knee problem, was replaced by Santi Cazorla.
Tomas Rosicky blasted over after a neat one-two with Giroud on the edge of the 18-yard box.
Villa were almost ahead on 52 minutes when, following a quick break, Delph's low drive beat Szczesny, but bounced back off the inside of his right-hand post and across goal.
GDS, introduced into the Premier League for the first time this season, came into play as the TV replays in the press box showed the referee had been notified the ball struck the base of the post and was not over the line before it rolled away.
The match officials, though, could have done with the benefit of a second look at the award of a second penalty for Villa on the hour.
Agbonlahor sprinted into the Arsenal area but Koscielny looked to have made a fine recovering tackle, getting a touch on the ball before the Villa man. However, referee Taylor decided otherwise and pointed to the spot.
This time, Benteke made no mistake, crashing the ball past Szczesny.
It got worse for Arsenal on 67 minutes when Koscielny, who had been booked for the penalty, was shown a second yellow card when he clattered into Weimann.
To their credit, Arsenal rallied, and Rosicky was denied by a good reaction save from Guzan, who deflected Cazorla's half-volley up onto the crossbar.
But with Arsenal pressing forwards, they were hit on the break as Villa's summer signing Luna darted clear to slot past Szczesny with five minutes remaining.