Tactical changes by Toffees boss Marco Silva decided the game, with Dominic Calvert-Lewin heading in fellow substitute Ademola Lookman’s cross.
Moments later, substitute Cenk Tosun fired in the second.
Earlier in the second half, Everton keeper Jordan Pickford saved Luka Milivojevic’s penalty with his feet.
Everton’s third victory in a row lifted them to eighth in the table, while Palace stay in 15th, two points above the relegation zone with only two wins this season.
For most of the afternoon a rather drab encounter looked destined to finish goalless as both sides struggled to create clear chances.
What swung the game in Everton’s favour was Silva’s decision to make a bold attacking double change, bringing on forwards Calvert-Lewin and Lookman with eight minutes left.
The home side effectively switched to a 4-2-4 formation, having earlier introduced striker Tosun for attacking midfielder Bernard.
Lookman clipped in a precise, curling ball from the left which was met by a Calvert-Lewin header from close range.
As Palace belatedly tried to respond, Tosun latched on to a long punt clear by defender Michael Keane to fire through Palace keeper Wayne Hennessey’s legs one minute 44 seconds later.
“It came down to which manager was brave enough to make the big changes – and it was Marco Silva,” former Scotland winger Pat Nevin said on BBC Radio 5 live.
“Luck favoured the brave. I don’t think you will see too many better substitutions this season.”
This was the first time since August 2017 that three substitutes were directly involved in goals in a Premier League game.
England international Pickford, 24, attracted plaudits during the international break after his distribution helped set up two goals in the surprise 3-2 Nations League win over Spain on Monday.
Again he produced a moment of quality with his feet, albeit in a rather different manner after Seamus Coleman tripped Wilfried Zaha to concede the penalty.
Diving to his left, Pickford stuck out his right boot to stop Milivojevic’s spot-kick down the middle and prevent Palace from taking the lead with only their second shot on target.
It was only Milivojevic’s second penalty miss in his past 11 attempts.
“It was a good save from the goalkeeper,” Crystal Palace manager Roy Hodgson said. “If Luka had scored it might have been a different story.”
One positive for Palace was the return of striker Connor Wickham after a two-year absence because of a serious knee injury and subsequent problems.
The 25-year-old made his first appearance since November 2016 when he came him on seconds after Tosun’s 89th-minute goal, but had little time to make an impact.
“He has worked so very hard to get into that position where he is deemed fit enough to get on the bench,” Hodgson said.
“We would not have risked him for a long period of the game. I’m sure he will be pleased to have got on the field for Palace in a Premier League game and hopefully it will give him hope and heart.
“He has still got a lot of hard work to do on the training field.”