The striker's 14th and 15th goals of the season and a Bryan Mbeumo header were enough to ensure Andre Ayew's lifeline midway through the second half was in vain.
Brentford took the lead after 19 minutes, Ethan Pinnock rising at the far post to head Mathias Jensen's corner back across goal for Mbeumo to nod home past the despairing hand of Swans keeper Freddie Woodman.
They stretched their advantage midway through the first half when Ollie Watkins grabbed his 14th goal of the season with a superb instinctive volley from Ricoh Henry's first-time cross from the left.
But Watkins 89th-minute strike – running on to a slide rule Josh Dasilva pass to fire past keeper Freddie Woodman – sealed the points to put his side within seven points of second-placed Leeds.
The Bees rarely moved out of third gear before the break, Matt Grimes managing the visitors' only effort with a speculative 30-yard strike that flew over the bar.
Swansea started brightly enough, with Celina enjoying a lot of space down the left flank, but they failed to muster a single attempt on goal in a one-sided opening spell.
Watkins was the first to set his range-finder after a subdued first 15 minutes, bursting into life and cutting in from the left to fire in a low drive that deflected just wide of the far post.
Brentford's opener was a routine move from the training ground, Pinnock peeling away at the back post to head back for Mbeumo to break the deadlock from close range.
The Bees looked deadly every time Swansea pressed forward looking for the equaliser, breaking with a pace and intensity that Swansea could not handle.
Kamohelo Mokotjo went close with a low drive deflected wide, but when it came the Bees second was a work of simplicity.
Live-wire winger Said Benrahma nutmegged his man and sent Henry free down the left and his early cross looked too long for Watkins, but the big striker stretched and steered his shot inside the upright.
Benrahma was enjoying himself as the half wore on and forced a smart save low by his upright from Woodman after 36 minutes as the hosts looked to kill the game off before the break.
But after the interval City pressed higher and Celina was first to signal his side's intent with a rising drive that flashed just over.
Mbeumo went close with a rising drive that just flew past the angle on the hour mark before Ayew gave the visitors hope with an opportunist finish.
Swansea grew in confidence and looked the side most likely as they pinned the Londoners back and forced a string of errors, without ever really testing their goal.
City centre-back Ben Wilmot was lucky not to see red for a scything late lunge on Mbeumo as Brentford tried to get a foothold back in the game.
Benrahma saw two efforts fly wide before Henry wasted arguably the best chance to kill the game off with three minutes to go, seeing his first shot blocked and then slicing just wide with the goal at his mercy.
But Watkins had the final say though, charging clear of the City defence to fire low into the corner and give the Bees the double over the Welshmen.