Jurgen Klopp's side got off to the perfect start eight minutes in when Andy Robertson's corner was met by a bullet header from Virgil van Dijk that left goalkeeper Vicente Guaita stranded. The visitors doubled the lead when Robertson found Alex Oxlade-Chamberlain at the far post.
A sloppy pass from Joel Matip presented the home side with their best chance of the game to draw a strong save from Alisson, and that looked to swing the pendulum of momentum in Palace's favour, with the goalkeeper called upon again moments later to get a vital touch after Jean Philippe-Mateta rounded him.
The Eagles began the second half as they finished the first, immediately carving three promising chances. Quick feet and a cross from Michael Olise was headed wide by Conor Gallagher, Edouard was denied from close range, but Alisson was finally beaten when Mateta created the chance for Edouard to tap into an empty net and make amends for his effort moments earlier.
Olise was a standout performer on the day and came close to equalising with a lob from range, but it was the Liverpool goalkeeper again who got a hand to it, confirming a man-of-the-match performance between the sticks.
Liverpool made the most of their positive spells and profited with goals when they were on top. The visitors pressed well at times, particularly in the opening 30 minutes, often winning the ball back in dangerous areas. That proved vital in holding on to take the three points.
They simply conceded too many chances on their trip to Selhurst Park. If Klopp's side are going to remain in the title race, they can't afford to present so many opportunities of high-value to opponents.
Manager ratings out of 10
7 -- Klopp selected the best team he could with three players -- Mohamed Salah, Sadio Mane and Naby Keita -- away at the Africa Cup of Nations, and they looked to be in total control when going 2-0. The Liverpool manager reacted well to Palace's goal, introducing Takumi Minamino and tweaking the system to stop the opponents getting in behind so much.
Player ratings (1-10; 10 = best, players introduced after 70 minutes get no rating)
GK Alisson 10 -- The score at half-time could have been very different had it not been for Alisson, who denied Olise from close range before getting a vital touch when Mateta tried to take the ball around him.
DF Andy Robertson 9 -- The left-back has found a new level with his delivery in recent weeks, and two crosses delivered with finesse got him another two assists at Selhurst Park.
DF Virgil van Dijk 7 -- A towering header ensured only the Netherlands international could win the ball from a corner, directing the ball with power into the back of the net. The centre-back will be disappointed with the goal conceded, though, losing sight of his man who got in behind and punished the Reds.
DF Joel Matip 6 -- A careless giveaway of the ball presented Crystal Palace with a big chance before the break, but it was a case of Alisson to the rescue. The partnership between Liverpool's central defenders looked indecisive too often on the day, and that was exploited by Patrick Vieira's side.
DF Trent Alexander-Arnold 7 -- Alexander-Arnold worked hard to get up and down the line but struggled to make an impact from Crystal Palace's performance forcing Liverpool back into their half.
MF Fabinho 7 -- Scored the all-important late penalty that put his side 3-1 up and ease the nerves of Liverpool fans.
MF Curtis Jones 6 -- Some neat build-up helped move the ball forwards and wrong-foot defenders, though his influence on the game faltered when Palace started to play quicker.
MF Jordan Henderson 7 -- The captain ran tirelessly throughout the game and helped garner some control back in the midfield that they had lost for spells of the game.
FW Diogo Jota 7 -- Jota was neat on the ball and often found a way to get inside the box to cause problems, and that was no different when he won a penalty that was eventually awarded by VAR.
FW Roberto Firmino 7 -- Firmino hassled defenders all game and enjoyed plenty of intricate link-up play at the top end of the field, though he will have his goalkeeper and defence to thank after a cheap loss of possession almost led to a goal in the first half.
FW Alex Oxlade-Chamberlain 7 -- The 28-year-old made no mistake with the finish as he connected with Robertson's cross from the left flank. Oxlade-Chamberlain looked sharp today, and it looks as though he is benefitting from a run of increased game time in the team.
Takumi Minamino (Oxlade-Chamberlain, 60') 6 -- Came on with vital instructions that stopped Palace as they were flying through the channels. Worked hard in his defensive duties, but the Reds couldn't really get anything going on the right flank.
James Milner (Firmino, 90') N/R -- An injection of experience from Klopp helped see out the six minutes of added time.
Joe Gomez (Alexander-Arnold 90') N/R -- Liverpool's final substitution helped them weather the final response from Crystal Palace.