With United not in action until Sundayâ€™s trip to Swansea, Roberto Manciniâ€™s team desperately needed to put pressure on their bitter rivals and they finally seized the opportunity in the closing minutes at Eastlands.
After labouring to break down struggling Reading for long periods, the champions broke the deadlock when England midfielder Barry headed home from a David Silva cross.
That was enough to move City within three points of United and keep their title challenge alive heading into the busy Christmas programme, while Reading stay bottom after their 11th defeat of the season.
Arsenal climbed to third place as Mikel Artetaâ€™s second half penalty sealed a 1-0 win over Wigan at the DW Stadium.
The only goal of a scrappy encounter arrived in the 60th minute when Spanish midfielder Arteta fired home from the spot after referee Jonathan Moss gave a penalty for Jean Beausejourâ€™s clip on Theo Walcott.
For all the talk of a crisis enveloping Arsene Wengerâ€™s side after their humiliating League Cup defeat at League Two minnows Bradford, the Gunners have now won their last three league matches and are back in the race to secure a Champions League place.
â€œIt was very important because we beat West Brom at home and now we have two away wins,â€ Wenger said.
â€œIt was a difficult game because they stopped us from playing. I believe they are in the wrong position in the table.â€
Newcastle ended a miserable run of six defeats from their last seven league games as Shola Ameobi clinched a 1-0 victory against QPR at St Jamesâ€™ Park.
Ameobi came off the bench to hit the winner with a fine finish in the 81st minute, handing QPR boss Harry Redknapp his first defeat since officially taking charge last month.