The result leaves David Moyes’ side level on points with third-placed Manchester City in fourth, while Villa remain 15th, three points above the bottom three
Ben Johnson opened the scoring for the visitors with a low drive into the bottom left corner from 18 yards after being picked out by Declan Rice’s cross-field pass.
And Rice drove into the same corner to restore the Hammers’ lead after Ollie Watkins had swept home an equaliser following good work from Emiliano Buendia near the byline.
Though Villa rallied and saw Watkins head against the bar from John McGinn’s cross their hopes of taking anything from the contest were ultimately undermined by Ezri Konsa’s dismissal for a foul on Jarrod Bowen, with the Hammers forward through on goal.
As they pressed forward for an equaliser, Pablo Fornals tapped in a third on the break and Bowen rounded off the scoring for West Ham with another close-range finish into an empty net after good work from Michail Antonio and Manuel Lanzini.
West Ham’s victory epitomised their fine start to the campaign and saw them equal an eight-game unbeaten run on their travels in the top-flight dating back to November 1986.