The Swans missed out on the chance to go level on points with second-placed Cardiff as they were beaten at home by Portsmouth.
But the home side couldn't have asked for a better start as Craig Beattie broke the deadlock with just two minutes played - his first goal in nearly 13 months.
Brendan Rodgers' side did have further chances to extend their advantage but Pompey struck back just before half-time through David Nugent.
And the goal that sealed victory for the visitors came midway through the second-half, Greg Halford allowed space inside the area to head home Liam Lawrence's delivery.
Alan Tate was handed the captain's armband as he returned from suspension.
The defender missed out at Doncaster the week before but slotted straight back in at left-back in place of Neil Taylor.
Scott Sinclair was also back on the wing with David Cotterill dropping down to the bench.
Swans:Dorus de Vries; Angel Rangel, Albert Serran (Kemy Agustien, 76'), Ashley Williams, Alan Tate(C); Mark Gower (Stephen Dobbie, 76'), Darren Pratley, Joe Allen; Nathan Dyer, Scott Sinclair, Craig Beattie (Cedric van der Gun, 75').
Not Used:Yves Makabu-Makalambay (GK), Neil Taylor, Andrea Orlandi, David Cotterill.
Pompey: Jamie Ashdown; Greg Halford, Aaron Mokoena (C), Ricardo Rocha, Joel Ward; Liam Lawrence, Michael Brown (Richard Hughes, 78'), Hayden Mullins, Jon Utaka; David Nugent, David Kitson (Hermann Hreidarsson, 90').
Not Used: Daryl Flahavan (GK), Kanu, Nadir Ciftci, Ibrahima Sonko.
Referee: S Tanner (Somerset)
There was no snow on show in Swansea but there was a slight delay to the start of this game because of traffic problems on the M4 due to the weather.
And fans of both sides were still streaming into the Liberty Stadium as this game exploded into life very early on as Scott Sinclair fed Darren Pratley straight from the kick-off, but his shot flew over.
But with just one minute and 50 seconds on the clock Swans were ahead. Angel Rangel broke down the right after good work by Pratley and when the ball was played in to Mark Gower, the midfielder slipped in Craig Beattie with a great ball. The striker kept his cool to fire a fine finish into the bottom corner as goalkeeper Jamie Ashdown was left stranded.
It was Beattie's first goal of the season - and his first in over a year.
While Swansea remained on the front foot, Nathan Dyer fired a glorious chance over before Pompey nearly caught the home side napping as Dorus de Vries tipped a David Kitson close-range shot over.
Two minutes later and the visitors thought they had equalised when Kitson had the ball in the back of the Swansea net. But the linesman spotted a handball by Liam Lawrence in the build up and referee Steve Tannefr ruled it out.
Portsmouth were furious as Swansea restarted play immediately and Greg Halford was booked for pulling back Sinclair to buy his side some time to regroup.
With 28 minutes gone Swansea's pace down the right again caused Pompey all sorts of problems as Rangel played Dyer through. He out-paced Joel Ward and fired in a shot across Ashdown from an acute angle only to see his shot slip inches the wrong side of the far post.
The home side continued to dominate possession and had the chances to extend their lead but, with just two minutes before the break, Portsmouth struck back on the counter attack. Hayden Mullins played the defence splitting pass into David Nugent's path, the former England international took a touch and played the ball over de Vries.
Half-Time: Swans 1 Pompey 1
Craig Beattie was certainly keen on adding to his early opener before the break, and within 10 minutes of the re-start he had further attempts.
Either side of a Pompey corner the Scotsman saw a shot deflect wide for a corner and a header drop just wide of the post from Mark Gower's delivery.
But Portsmouth started to settle, pass it around and looked like a side that had Premier League experience.
And as this game just went beyond the hour mark their small spell of dominance paid off - Liam Lawrence's delivery from a quick one-two with Jon Utaka picked out the unmarked Greg Halford who steered a header past Dorus de Vries and into the corner.
The Swans fronted an immediate comeback and from the third of a series of Mark Gower corners Albert Serran towered above the defence and wasn't far off with a header.
Gower turned provider again soon afterwards, this time cutting back to Joe Allen from a free-kick only for the youngster to fire his effort off target from 20-yards.
The Swans were in desperate need of something fresh at this stage and Brendan Rodgers sent on three of his subs - Kemy Agustien slotting into defence, Cedric van der Gun in midfield and Stephen Dobbie up-front.
And Dutchman Agustien almost made an immediate impact as he was allowed time and space to wander into Pompey territory but sent a stinging strike just over the top of goal.
He was also at hand to tee up fellow replacement Dobbie with seven minutes remaining but Ashdown was equal to his low strike.
And even with three additional minutes at the end the Swans just couldn't break Pompey down as the visitors held on to record a win on their first ever trip to the Liberty Stadium.