Garry Monk's side earned a crucial away win and completed the league double over the disappointing hosts, as the Frenchman headed home in the closing stages of the match
After a forgettable first half, Arsenal pummelled the Swansea goal after the break, but Polish goalkeeper Fabianski - who joined Swansea in the close-season after a seven-year spell in north London - made a string of superb stops to deny the likes of Alexis Sanchez, Nacho Monreal and Theo Walcott.
And Fabianski's contribution proved priceless as Gomis, who came on as a second-half substitute following a month-long lay-off with an ankle injury, headed home an 85th-minute winner, with goalline technology showing the ball clearly went in despite David Ospina's best efforts.
It was the second time Gomis has scored against Arsenal this term after he bagged in Swansea's 2-1 home win in November, and Garry Monk's side maintained their challenge for a sixth-placed finish that will offer Europa League football should Arsene Wenger's team beat Aston Villa in the FA Cup final.
Arsenal, meanwhile, have surrendered the advantage in the race for second to Manchester City with just two games remaining.
Wenger named the same starting XI for the fifth straight match, and the hosts had the first sight of goal when Olivier Giroud nodded Aaron Ramsey's cross over the bar.
Both teams struggled to create clear-cut chances, though, as Swansea's Jonjo Shelvey attempted an ambitious long-range half-volley - more out of hope more than expectation - that sailed well over.
Arsenal had tentative penalty claims waved by away referee Kevin Friend in the 27th minute when Alexis Sanchez claimed he was tugged to ground by Neil Taylor from a Santi Cazorla free-kick.
Arsenal continued to dominate possession as the half wore on, but aside from a 25-yard effort that Giroud curled wide, they failed to trouble Fabianski.
There was more intent about Arsenal's game after the restart and Federico Fernandez made a superb sliding block from Hector Bellerin's low centre from the right to deny Giroud a chance at goal.
Soon after, Giroud's clever flick was pounced upon by Sanchez who showed great strength to hold off Fernandez before shooting into the side-netting.
Arsenal continued to surge forward and Ramsey rifled into the side-netting, before Cazorla dug out a shot from the edge of the penalty area that Fabianski saved well low to his right.
Swansea were under siege, but Arsenal substitute Theo Walcott could only prod Bellerin's centre straight at Fabianski.
Fabianski was in unbeatable form, with Wenger left scratching his head when the Pole denied Monreal one-on-one before making a fine double save from Sanchez and Walcott in the 78th minute.
And Arsenal's profligacy was punished five minutes from time, as Taylor chipped in a cross from the left and Gomis leapt highest to head home, with Ospina's attempted save not enough to prevent the ball from crossing the line.