Match ends, Chelsea 1, Liverpool 0.
Manager Antonio Conte said Chelsea were "putting pressure" on their rivals as they boosted their hopes of qualifying for next season's Champions League with victory over Liverpool.
Olivier Giroud expertly headed in Victor Moses' cross in the first half after the visitors had dominated possession and failed to capitalise.
Chelsea remain in fifth but move within three points of third-placed Liverpool.
"We are winning and our opponents are dropping points," said Conte.
With two games remaining to Liverpool's one, Chelsea can move level on points with the Champions League finalists when they face Huddersfield on Wednesday.
But, given their superior goal difference, the Reds would almost certainly ensure a top-four finish with victory at home to Brighton on the final day.
"We had the will to win, to keep the hope alive that we can get a place in the Champions League," Conte added.
"Probably one month ago it was impossible to imagine we would arrive at the end of the season fighting for the Champions League.
"I don't know if this will be enough but we have to try. It's important to face this situation with a lot of pride and show we are still alive."
Liverpool had more than 66% possession in the first half and created plenty of chances - the best falling to Sadio Mane, who was denied twice by Thibaut Courtois - but it was Chelsea who came closest.
Tiemoue Bakayoko's header bounced inches wide just moments before Giroud leapt high to nod home Moses' cross.
And Cesc Fabregas' smart run in behind the defence created an opening which he could not convert from a tight angle.
Chelsea had the best chances of the second half too. Hazard almost danced his way through before Antonio Rudiger's header was ruled out for offside and Marcos Alonso's volley flew inches wide.
Nervous conclusion to Liverpool's top-four bid
Liverpool looked set to secure a place in the top four last month when they comfortably beat Bournemouth 3-0 just days after knocking Manchester City out of the Champions League with a 5-1 aggregate win.
They were 12 points ahead of Chelsea and seemingly out of sight.
But back-to-back draws with West Brom and Stoke, as well as victories for Chelsea against Southampton, Burnley and Swansea, have made things difficult for Liverpool.
It would take a remarkable effort for Chelsea to overturn the 15-goal deficit but it could still be a nervous afternoon at Anfield on the final day of the season should Chelsea win their remaining games against Huddersfield and Newcastle.
Liverpool have had the distraction of their remarkable run to the Champions League final but should they fail to secure a place in next year's competition, it would be a huge disappointment.
Chelsea's surge keeps hopes alive
This game was important for both teams but for Chelsea a win was essential to keep their top-four hopes alive.
It was Liverpool, however, who showed the greater urgency in the early stages - dominating possession and creating a number of half-chances through Roberto Firmino and Mane.
The hosts held firm and took their chance when it arrived to give them a crucial lead at the break. The goal spurred them on, too, and the Blues were the better side in the second half - with five shots to Liverpool's two.
It was the type of gritty performance which has helped Chelsea close in on the top four - after their comeback win against Southampton and plucky displays at Burnley and Swansea.
And they deserve great credit for the way they have bounced back from a disappointing start to the year - when they had picked up just 12 points from a possible 33 before Giroud's late double helped them beat Southampton 3-2.
Two wins from their final two games could see them over the line if Liverpool or Tottenham drop points but, for now, it is out of their hands.
'I hate the result' - what the managers said
Chelsea manager Antonio Conte: "Today was a must-win game against a really good team, but it was a good game and a great show of will to keep our hope of finishing in the top four alive. I'm very happy for the players and the fans. They deserve this type of game and this win.
"Our target is to finish the season in the best possible way and to give the best satisfaction to all the fans. I think in spite of the difficult season we are still alive and are fighting until the end.
"In this league it's very tough, in the past, in the present and in the future, and it could be even more difficult in the future. You start the season with the six top teams and anything can happen.
On Olivier Giroud: "He brought a personality, he's an international player with a lot of experience and we needed this kind of player. Today he played a very good game and worked very hard without the ball, but I am pleased for the whole performance of the whole team."
Liverpool manager Jurgen Klopp: "I hate the result but the performance was good enough to get a good point. It's clear against Chelsea you have to avoid crosses, but the cross came in and it's difficult against Giroud, and that's the goal.
"Chelsea were strong but we did well and had a few good moments. But we weren't clinical enough. The performance was OK but the result was exactly the opposite of what we wanted."
"They had quality and a defensive plan. They played with eight men around the ball, and two very good attacking players. The longer the game goes on, it gets more difficult. We didn't have space to cross."
Bogey team - the best of the stats
- Liverpool have only lost more Premier League games against Manchester United (28) than against Chelsea (20).
- This is the first time that Liverpool have failed to score in consecutive Premier League games under Jurgen Klopp.
- Antonio Conte is the fifth manager to have faced more than 20 Premier League teams and beaten them all, after Alex Ferguson, Arsene Wenger, Jose Mourinho and Gordon Strachan.
- After going unbeaten in each of Jurgen Klopp's first eight Premier League away games against the rest of the 'big six' (W4 D4), Liverpool have lost four of the last five (D1).
- Since his Premier League debut in August 2012, Olivier Giroud has scored more headed goals than any other player in the competition (29).
- Giroud scored in a league game in which he started for the first time since May 2017 for Arsenal - each of his previous six goals in the competition had come from the bench.
- Since the turn of the Millennium, this was the 56th meeting between Chelsea and Liverpool in all competitions, making it the most played fixture between English sides in all competitions in the 21st century.
- Chelsea have won four consecutive Premier League games for the first time since November 2017.
Chelsea host Huddersfield on Wednesday, 9 May (19:45 BST) before travelling to Newcastle on Sunday, 13 May (15:00 BST).
Liverpool's final league game of the season is at home to Brighton on Sunday, 13 May (15:00 BST).
- 13CourtoisBooked at 90mins
- 15MosesBooked at 81minsSubstituted forZappacostaat 89'minutes
- 4FàbregasSubstituted forPedroat 90+3'minutes
- 3AlonsoBooked at 79mins
- 10E HazardSubstituted forWillianat 86'minutes
- 2ClyneBooked at 40minsSubstituted forHendersonat 59'minutes
- 4van Dijk
- 26RobertsonSubstituted forSolankeat 74'minutes
- 7MilnerSubstituted forMorenoat 89'minutes
- 11SalahBooked at 39mins
- Anthony Taylor
- Shots on Target
Second Half ends, Chelsea 1, Liverpool 0.
Attempt saved. Virgil van Dijk (Liverpool) header from the centre of the box is saved in the bottom right corner. Assisted by Sadio Mané with a cross.
Thibaut Courtois (Chelsea) is shown the yellow card.
Attempt missed. Dominic Solanke (Liverpool) header from the centre of the box is close, but misses the top left corner. Assisted by Sadio Mané with a cross.
Substitution, Chelsea. Pedro replaces Cesc Fàbregas.
Substitution, Chelsea. Davide Zappacosta replaces Victor Moses.
Substitution, Liverpool. Alberto Moreno replaces James Milner.
Attempt missed. Dominic Solanke (Liverpool) header from the centre of the box is high and wide to the right. Assisted by Dejan Lovren with a cross.
Sadio Mané (Liverpool) wins a free kick in the attacking half.
Foul by Tiemoué Bakayoko (Chelsea).
Substitution, Chelsea. Willian replaces Eden Hazard.
Foul by Dominic Solanke (Liverpool).
Antonio Rüdiger (Chelsea) wins a free kick in the defensive half.
Victor Moses (Chelsea) is shown the yellow card.
James Milner (Liverpool) wins a free kick in the defensive half.
Foul by Victor Moses (Chelsea).
Attempt missed. Marcos Alonso (Chelsea) left footed shot from the left side of the box is close, but misses to the right. Assisted by Victor Moses with a cross.
Marcos Alonso (Chelsea) is shown the yellow card.
Attempt blocked. Eden Hazard (Chelsea) right footed shot from outside the box is blocked. Assisted by Olivier Giroud.