The Newcastle number 10 fired in from close range five minutes before the hour mark to secure all three points for the Magpies.
But the Magpies will be more concerned with the growing injury list after Nick Pope was forced off.
The result means the Magpies leapfrog the Red Devils into fifth place with teams around them still to play. Man United drop down to seventh place following the defeat on Tyneside.
Going into the game, Newcastle had won three of their last five league games. With wins coming against Crystal Palace, Chelsea and league leaders Arsenal.
The Magpies named an unchanged side from their 1-1 draw against Paris St Germain in the Champions League. Newcastle have a lengthy injury list which has forced Eddie Howe to look to the academy, meaning 17-year-old Lewis Miley received another start in the Premier League.
The Red Devils made four changes from their 3-3 draw against Galatasaray in midweek. With Diogo Dalot, Kobe Mainoo, Marcus Rashford and Anthony Martial replacing Victor Lindelof, Sofyan Amrabat, Antony and Rasmus Hojlund. Alejandro Garnacho kept his place in the squad after scoring a magnificent overhead kick against Everton last Sunday.
Story of the game
Despite Newcastle controlling the game and having several touches in the box in the first 10 minutes, it was Manchester United who had the first real chance after 11 minutes. Alejandro Garnacho was played through by Bruno Fernandes, but his effort was punted away by Nick Pope.
Just one minute later, Bruno Guimaraes picked up a loose ball on the edge of the box but blasted well wide.
Just two minutes after, the Magpies came agonisingly close to scoring, Guimaraes played Almiron through on the right hand side, picking out Isak in the middle; his effort from 10 yards out was deflected out by Harry Maguire - replays had shown the ball to be heading past Onana into the back of the net.
In the first 30 minutes Newcastle were the more impressive side on the ball, with nine of their 11 players having touches in the opposition box, compared to just one for Manchester United.
In the 35th minute, Tripper played through Almiron, despite shaking off Dalot and cutting onto his left, the Paraguayans effort was well wide of the mark.
Six minutes before half time, Kieran Trippier was denied a stunning goal after his 25-yard free-kick crashed off the underside of the crossbar and bounced off the line.
Throughout the first half, Trippier and Almiron were free to exploit the right wing. Dalot was made to look like a novice playing as a makeshift left-back.
Newcastle had 14 attempts on goal in the first half. Manchester United only had two.
10 minutes into the second half, Gordon broke the deadlock for the Magpies. After Trippier squared the ball into the box, leaving the Englishman to fire into what was basically an empty net.
Just before the hour mark, Fabian Schar fired over from 30 yards.
70 minutes in, Newcastle had complete control of the game, the midfield press of Joelinton, Guimaraes and Miley did not allow the Red Devils out of their half. They looked nothing like a side that were playing their third game in seven days.
78 minutes in, Miley was denied a first Newcastle goal when his attempt was well blocked by Aaron Wan-Bissaka.
Manchester United had the ball in the back of the net just a minute before stoppage time, but Maguire was deemed to have touched the ball whilst in an offside position before it went in.
Manchester United took ownership of stoppage time, making many nervous Geordies bite their nails.
But it would prove to be too little, too late. As Newcastle saw out the nervy nine minutes of additional time.
Player of the match: Kieran Trippier
The 33-year-old looked back to his best in such a crucial game near the top of the table, an assist for Gordon’s goal and a clean sheet to put the icing on top of the cake.