We moved above neighbours City into third and, more significantly, stretched our advantage over fifth placed Liverpool to eight points in the battle for the Champions League positions.
Herrera put the Reds ahead two minutes before the break with a fine finish and Rooney fired in a superb second from Angel Di Maria's cross.
Christian Benteke set up a nervy last ten minutes but United were never really troubled and secured a fifth consecutive victory through Herrera's injury time strike.
The Spaniard's first strike came at an important time for Louis van Gaal's side who had dominated at Old Trafford but were in danger of being frustrated by Tim Sherwood's relegation threatened side.
The Reds had an early penalty appeal turned down early on when Maroaune Fellaini ran onto Antonio Valencia's weighted pass and cushioned it into the path of Rooney, who was set to pull the trigger when he appeared to be pulled back by Ciaran Clark but referee Roger East was unmoved.
Juan Mata's left footed drive was blocked and Villa goalkeeper Brad Guzan then tipped over Marcos Rojo's rasper from 25 yards.
United had to be patient in the first half against the compact and well-organised visitors before Ashley Young released Daley Blind who pulled the ball back for Herrera to steer a low finish home from 12 yards.
Villa should have equalised when Jores Okore met Leandro Bacuna's flighted free-kick but could only head wide from eight yards.
Young lashed an angled effort narrowly past the post and Guzan saved well from Fellaini but, with United not playing at the same tempo, van Gaal introduced Di Maria on 70 minutes.
Radamel Falcao came on soon after but it was the Argentine, our leading assist maker this season, who set up the second as his cross from the left allowed Rooney to control, swivel and arrow home a delightful finish 11 minutes from time.
That appeared to have put the game beyond doubt, but Villa almost instantly gave themselves hope through Benteke's low effort that crept in under David de Gea.
United were always in control of proceedings though and it was Herrera who finally killed the contest in stoppage time when he sidefooted Mata's cross beyond Guzan to add gloss to a deserved result.
United Faithful Man of the Match: Ander Herrera
Overall team performance: 7/10