Chelsea looked the more likely to find a winner, but they were kept at bay. The result means they are only one point clear at the top of the table.
Chelsea dominated possession and territory, but were limited in how many clear chances they created.
Antonio Rudiger took matters into his own hands on the half hour mark, letting fly from distance only to see his effort cannon back off the bar.
Hudson-Odoi had another shot saved and Reece James fired wide, but United held on to keep it 0-0 going into the break.
Despite Chelsea’s dominance, it was United who took the lead five minutes into the second period.
The visitors cleared a corner and Jorginho, the last man back, made a mess of controlling the long ball. Jadon Sancho knocked it past the Italian, and with Marcus Rashford alongside him, finished cooly past Edouard Mendy.
United looked increasingly dangerous on the counter, but Aaron Wan-Bissaka gifted Chelsea a way back into the match.
The full-back kicked through Thiago Silva in the box as the ball dropped from a corner, and the referee pointed to the spot. Jorginho sent De Gea the wrong way to level things up.
Chelsea pushed for the winner and had several shots blocked, before the big chance came with the final kick.
Christian Pulisic did well on the right to cross it to the far post, where Rudiger was completely free. He went for power, and his volley flew well over the bar as Chelsea were forced to settle for a point.