The ex-Swansea midfielder netted three times as Roberto Martinez's side pick up their fourth win of the season at the DW Stadium whilst Royals slump to fifth defeat of the campaign
The Royals took the lead 35th minute as Sean Morrison rose highest in the penalty area above several Latics defenders to head the ball into the top corner.
Roberto Martinez’s side levelled when the former Swansea man tapped in from close range. He doubled his tally for the day when he headed Jean Beausejour's cross home to give the Latics the lead.
Just as the hosts thought they had the lead secure keeper Ali Al-Habsi put the ball into his own net as he attempted to push Hal Robson-Kanu’s shot over the bar.
The drama did not end there, though, as Gomez got his hat-trick in injury time, lifting the ball into the top corner to give Wigan all three points.
Martinez made three changes to his team that lost to Liverpool last week as Ronnie Stam, Gomez and David Jones came into the team replacing Ben Watson, Gary Caldwell and Franco Di Santo. Brian McDermott named an unchanged side to the team that beat Everton last week.
The Latics were enjoying the majority of possession in the early stages and should have taken the lead in the 12th minute as Beausejour found space down the left and hit a sublime cross into the box for Arouna Kone who somehow missed a free header from six yards.
Minutes later Kone again should have given his side the lead when he was put through one-on-one with Federici. He fired the ball at goal but his effort was cleared off the line by Chris Gunter.
The Latics were made to pay for their lack of a clinical touch in front of goal as McDermott's side took the lead through Morrison, who rose highest in the area to head Shorey's pinpoint free kick into the top corner.
Wigan should have got an equaliser almost immediately as Beausejour fed Gomez, who drove into the Royals' box and rounded the challenge of Kaspars Gorkss but when he finally shot his effort went well over the bar.
Martinez's side almost had the perfect start to the second half as substitute Di Santo raced onto Gomez's through ball but the Argentine was denied by an excellent save from Federici.
The home side finally got the goal they deserved when Gomez fired in an equaliser after a great attacking move down the left, as Beausejour and Di Santo combined to set up the midfielder, whose first effort was saved by Federici but he showed awareness to knock in the rebound.
Reading almost regained their advantage immediately and Wigan were indebted to Al-Habsi who made a great save to deny Le Fondre as his header looked certain to hit the back of the net.
This time the Latics made the visitors pay for their missed opportunity as Gomez scored his and Wigan's second of the day as he headed Beausejour's deep cross past Federici at the back-post into the top corner.
In an end-to-end game the Royals were gifted an equaliser by a bizarre moment from Al-Habsi, as he knocked the ball into his own net while attempting to clear the Robson-Kanu's blocked effort over the bar.
However, in the dying seconds Gomez picked up the ball in midfield and drove down the pitch. He fed Kone who returned the pass and the Spaniard fired his shot into the top corner to seal the win.