The two-time Premier League champions were given a scare when Gylfi Sigurdsson scored in the third minute of added time, but it was too late to inspire a comeback.
It was a slow start from both sides at the Liberty Stadium, but Swansea caused the first real threat inside the first 10 minutes.
The full-back took the ball to the byline before playing it back for Angelino, who volleyed a shot but missed the target.
As the first half progressed, Swansea looked the better side, but they were given some gifts from Caballero - in one incident the keeper's poor pass fell to Baston Borja.
The forward tried to react immediately as he unleashed a shot, but Caballero made amends for his blunder by tipping the ball over the crossbar.
At the other end of the pitch, Navas tried to find the breakthrough for City by thumping a shot from long range, but it was comfortably caught by Kristoffer Nordfeldt.
It was not the most convincing touch from the defender, though, as the ball trickled towards the goal, but Nordfeldt managed to drop to his right to make a crucial stop.
After the break, City stepped up the tempo as Clichy charged down the field before laying off the ball to Angelino, who returned the ball to the full-back on the edge of the penalty.
Clichy got a bit of luck when the shot was deflected off Neil Taylor, but the visitors were not complaining as the ball nestled into the back of the net.
John Stones had a shaky moment in defence when he gave the ball away to Gylfi Sigurdsson in the 18-yard box, but the midfielder's shot was blocked by Caballero.
City doubled their lead in the 67th minute when Garcia slotted the ball into the bottom corner of the net with his first touch after a pull-back from Navas.
Swansea had the ball in the back of the net when Sigurdsson swung the ball into the area from the corner flag, but the goal was disallowed due to a foul on the goalkeeper from Leroy Fer.
It was not the easiest night for City, particularly as Guardiola felt the need to bring on Kevin De Bruyne, and they were given a late wobble when Sigurdsson found the back of the net.
In the end, City managed to see the game out, but one of their players did not - Vincent Kompany sparked fresh injury concern as he walked off the pitch before the final whistle after making his comeback from a thigh problem.