United midfielder Bruno Fernandes opened the scoring thanks to a howler from Villa goalkeeper Emiliano Martinez following an early long-distance strike. The midfielder doubled his side's lead with a strike that cannoned down from the crossbar midway through the second half.
Coutinho, who joined on loan from Barcelona on Tuesday, then turned hero on 82 minutes, connecting with a low cross Ramsey at the back post and prodding home to rescue a point for Villa.
United were without Cristiano Ronaldo and Marcus Rashford, who interim boss Ralf Rangnick said were unavailable due to injury. Teenager Anthony Elanga started in their place, with Jadon Sancho named on the bench.
United broke the deadlock on six minutes when Fernandes collected a short free-kick from defender Alex Telles and fired down the throat of Villa goalkeeper Martinez, who allowed the ball to roll through his hands and into the back of the net.
United continued to dominate in the first half, but Villa threatened on a couple of occasions, notably when new-signing Lucas Digne, who joined from Everton on Thursday, connected with a cross from teammate Matthew Cash, but his volley was denied by De Gea.
Villa took control of the game after the break, supplying regular pressure on the United goal, but Fernandes doubled United's lead on 67 minutes, collecting a short pass from midfielder Fred before taking aim with a well-struck shot that cannoned down from the crossbar.
Coutinho came off the bench 68 minutes for midfielder Morgan Sanson, who was visibly frustrated as he made his way to the bench, and Gerrard's decision paid early dividends as the midfielder set up Ramsay for a goal on 77 minutes.
The pair then reversed roles four minutes later, with Ramsay delivering the ball to the back post where Coutinho prodded home, rescuing a point for his side.
Villa have moved up to 13th place in the Premier League, on 23 points after 20 games.