Jurgen Klopp’s side had to work hard to break Everton’s stubborn resistance in a fractious Merseyside derby at Anfield.
They could not muster a shot on target until Scotland defender Andrew Robertson scored with a second-half header.
Divock Origi’s late strike ensured Liverpool kept the pressure on champions City, who had crushed Watford 5-1 on Saturday to move four points clear at the top.
With five games left for both Liverpool and City, the title race looks destined to go down to the wire.
Liverpool, trying to become the first English club to win all four major trophies in one season, now turn their attention to Wednesday’s Champions League semi-final first leg against Villarreal.
Everton have lost eight successive away games for the first time since 1948 and are in grave danger of relegation to the Championship.
Frank Lampard’s men were dumped into the relegation zone by Burnley’s 1-0 win against Wolves earlier in the day. They sit two points behind Burnley with a game in hand as they try to avoid playing in the second tier for the first time since 1954.
At Stamford Bridge, Chelsea looked set for more angst on home turf when Jorginho’s penalty was saved by Lukasz Fabianski.
But Christian Pulisic came off the bench to inspire third-placed Chelsea, lifting them seven points clear of fifth-placed Tottenham in the fight to qualify for next season’s Champions League via a top four finish.
A 4-2 defeat against Arsenal on Wednesday had condemned Chelsea to three successive losses at the Bridge for the first time since 1993, sparking fears they could fall out of the top four. (AFP)