The only goal of the game arrived in the 13th minute when Jores Okore felled Jefferson Montero on the edge of the area.
Iceland international Sigurdsson stepped up to bend his right-footer over the wall and past Brad Guzan for his 50th goal in English football.
Lukasz Fabianski was forced into two high-quality saves in stoppage time to deny Christian Benteke and then Gabby Agbonlahor from snatching a share of the spoils for Villa.
Villa will consider themselves hugely unlucky not to return home to the Midlands with at least a point.
Heavy morning rain had left surface water on the Liberty pitch but Swansea soon settled into their customary passing game to build early momentum.
Although he was conceding several inches to Alan Hutton, Montero climbed above the Villa defender at the far post to head Nathan Dyer’s cross over and the lively Ecuadorian was the man Swansea looked to cause problems in the opening exchanges.
But Villa looked to spring quickly and Agbonlahor, cleared to play after the first red card of his career against Manchester United was rescinded by the Football Association on Tuesday, almost profited from a slick counter-attack.
Aly Cissokho’s cross was aimed for the head of Benteke but Neil Taylor intervened and the ball fell enticingly for Agbonlahor, whose 25-yard effort fizzed wide of the post.
Villa were struggling to contain Montero and his mazy run saw him leave Hutton and Fabian Delph in his wake before he was upended on the edge of the area by Jores Okore.
Sigurdsson had scored a free-kick special to defeat Arsenal last month – his previous Premier League goal – and he repeated the feat with a sweet strike over the Villa wall and past Brad Guzan into the top corner of the net for his third league goal of the campaign.
But Swansea’s momentum was slowed when Montero had to be helped from the pitch and the winger was seemingly in tears as he left the action.
Montero’s exit gave the visitors belief they could back into the game and Jonjo Shelvey was booked for stopping Agbonlahor leading a Villa break-out before Tom Cleverley’s cross caused anxiety in the Swansea defence.
Benteke looked favourite to reach the centre and when it cleared the Belgian’s head, Cissokho was unable to collect at the far post with the Swansea defence stretched.
Villa’s best chance of an increasingly even first half arrived after 33 minutes when Benteke sent a 25-yard free-kick inches wide with Swansea goalkeeper Fabianski rooted to the spot.
Benteke then headed Delph’s free-kick wide close to half-time and Villa boss Paul Lambert changed formation at the break, with Andreas Weimann replacing Cissokho and playing four at the back.
Villa were getting men higher up the pitch into the box but the delivery was often below-par.
Swansea manager Garry Monk probably wanted some greater control and he responded to some pinball inside his side’s penalty area by introducing Tom Carroll at the expense of Shelvey.
But Villa were growing in stature and Weimann wriggled through after a tidy passing movement, although his shot lacked power and Fabianski saved comfortably.
Weimann then surged past Williams and Federico Fernandez but his cut-back was poor and straight into the arms of Fabianski with eager Villa forwards waiting in the centre.
The home crowd were worried but Ki Sung-yueng was put clean through in the 66th minute after a one-two with Sigurdsson, but the South Korean wasted the opportunity badly.
Dyer could have put the issue beyond doubt in the final 10 minutes but Swansea were left to cling on and in the end thank their goalkeeper for victory.
Swansea City: Fabianski (8) Rangel (7) Fernandez (6) Williams (6) Taylor (6) Ki (6) Shelvey (6) Sigurdsson (8) Dyer (7) Montero (5) Bony (5).
Subs: Routledge (7) Carroll (5) Emnes (4).
Aston Villa: Guzan (7) Hutton (6) Vlaar (6) Okore (5) Clark (6) Cissokho (5) Delph (7) Cleverley (6) Sanchez (5) Agbonlahor (6) Benteke (7).
Subs: Weimann (6) Grealish (5).
MAN OF THE MATCH: Gylfi Sigurdsson (Swansea City)