The hosts came into the tie searching for a win in their past five games, with their visitors not any better.
Frank Lampard's side had lost their last three games but saw more misery piled on them as Villa produced four first-half goals, including three within 10 minutes to get back to winning ways.
After Conor Hourihane’s early opener, Abraham doubled the hosts’ lead, converting from an Ahmed El Mohamady low cross in the 37th minute.
The Chelsea loanee turned provided, setting up Hourihane for his brace in the 44th minute before Jack Grealish's screamer in the injury time of the first half.
With 21 goals, Abraham is now five goals short of his personal season best having netted 26 goals in 45 games for Bristol City in the 2016-17 season. Remarkably, though, his goals this season have come from only 29 games.
Aston Villa are 11th in the log, with 48 points from 35 games. They play Birmingham City next.