Sadio Mane’s goal sank Everton and settled a scrappy Merseyside derby in Liverpool’s favour at Goodison Park.
The Reds’ £34m summer signing from Southampton reacted first to a loose ball after substitute Daniel Sturridge’s shot had hit the post in the fourth of eight minutes of stoppage time.
Everton, who had lost goalkeeper Maarten Stekelenburg to injury in the second half, have now won just one of their past 20 meetings with their local rivals.
Liverpool – who moved up to second – created the better chances, with Stekelenburg and his replacement Joel Robles saving well from Roberto Firmino.
There was a flashpoint in the second half when a dreadful tackle by Ross Barkley on Jordan Henderson sparked angry scenes and the Everton midfielder was fortunate to escape with only a yellow card from referee Mike Dean.