Hammers goalkeeper Lukasz Fabianski suffered a nasty first-half blow which saw him leave the pitch on a stretcher.
Alexander Isak struck for the 10th time in 10 Premier League games as Newcastle ripped 10-man Aston Villa apart to climb into the top five.