The Welsh side went ahead in the fourth minute when Stephen Warnock got in a mix-up and gave the ball straight to Nathan Dyer, who took it on before firing past Brad Guzan.
Wayne Routledge then made it 2-0 shortly after half-time, pouncing when Danny Graham hit the post, to seal a maiden victory on the road for the Swans since their promotion to the top flight last summer and condemn their opponents to a fourth successive defeat at Villa Park.
The result brought Alex McLeish’s team crashing back down to earth after their shock 3-1 win at Chelsea on New Year’s Eve and sees them slip to 12th in the table, overtaken by Swansea, who are up to 11th after building on Saturday’s 1-1 draw with Tottenham with another impressive performance.
As anticipated, Swans boss Brendan Rodgers refreshed his side again by making a host of adjustments from the Spurs game, restoring the likes of Graham, Leon Britton and Angel Rangel to the starting line-up.
Villa’s record signing Darren Bent, who had come off the bench to score against Chelsea after missing three matches with a thigh problem, came in for Marc Albrighton in what was the only change for the midlanders.
Having finished 2011 on such a high, Villa made a terrible start to the new year as Swansea snatched an early lead following a blunder by Warnock.
The defender needlessly lost possession in his own half and Dyer took full advantage, collecting the loose ball, driving into the box and firing a shot into the corner of the net.
The hosts looked to make a quick response, but Gabriel Agbonlahor appeared to be put off by his team-mate Bent as he headed Charles N’Zogbia’s cross wide, and Swansea then went close to doubling their advantage, Andrea Orlandi given the space to advance before flashing a strike across Guzan’s goal.
Stephen Ireland saw an effort deflected behind and James Collins a header saved as Villa attempted to get back on level terms, but a cross-cum-shot from Dyer in between issued another warning at the other end.
Warnock suffered more embarrassment just before the half hour mark as he was left for dead by Dyer, whose cut-back was met by Graham to bring a stop out of Guzan.
N’Zogbia blazed a free-kick over the bar and Swansea were soon breaking forward again, this time Orlandi teeing up Graham, who sent his shot just wide.
Villa struggled to muster much in way of reply and were grateful that the damage was not greater by the time the interval came.
Within just two minutes of the restart, though, the hosts had fallen further behind, with another error on their part playing a role.
Guzan sent his goal-kick to a white shirt and the ball came to former Villa man Routledge, who burst forward, laid on a pass for Graham and then reacted swiftly when the striker hit the post, tucking away the rebound to register his first goal for Swansea.
There was no let-up, with Orlandi almost slipping in Graham, and Richard Dunne summed up Villa’s frustrations when he shoved over Dyer, picking up a booking in the process.
After N’Zogbia’s shot was blocked and Dunne headed over, it was then the Villa fans who vented their anger, making their displeasure known at McLeish’s decision to substitute Ireland for Albrighton.
Ciaran Clark tried to turn and shoot in the Swansea box, but the ball was taken away from him before he could pull the trigger.
The visitors continued to threaten, with Dunne doing just enough to ensure Graham’s shot could not trouble Guzan and the goalkeeper then managing to stop Joe Allen squeezing through.
N’Zogbia nearly pulled one back at the death, but his shot hit the goal frame and the boos rang out around the ground from Villa fans at the final whistle as another home loss was confirmed.