United trail their traditional rivals on goal difference with both teams on 33 points from 16 matches ahead of their clash at Anfield on January 17.
Liverpool travel to Southampton on Tuesday (NZ time) while United visit Burnley on January 12.
United stretched their unbeaten league run to 10 games as Bruno Fernandes capped another fine individual performance with a penalty after Bertrand Traore had cancelled out Anthony Martial's opener for the home side.
With striker Edinson Cavani serving a three-match ban for a social-media related offense, Paul Pogba got a start and put in a solid performance in the midfield as United ground out yet another tough win.
United right back Aaron Wan-Bissaka, who constructed the home side's opening goal for Anthony Martial, was upbeat with the winners of a record 20 league titles looking to mount a credible challenge this term.
"The win means a lot, it shows where we've come from, from the start of the season," the 23-year old said.
"We're just taking it game by game. It was a late start for us, we were in catch-up mode, but we're here now. No excuses."
The hosts had the upper hand in the first half and Martial forced an acrobatic save from Emiliano Martinez before he buried a superb diving header past the Villa goalkeeper after Wan Bissaka's fine cross in the 40th minute.
The visitors came close through Ollie Watkins before Traore got on the end of a sharp Jack Grealish pass at the far post and beat United keeper David De Gea with a slick shot from close range in the 58th.
But Villa's joy was short-lived as Fernandes drilled his penalty into the bottom right corner three minutes later after Paul Pogba went down under a challenge from Douglas Luiz, with the spot-kick given after a VAR check.
United pressed on and came close through Pogba as well as Fernandes and Marcus Rashford before being forced to defend desperately in the dying minutes, with centre back Eric Bailly putting in a crucial stoppage time block.