Everton started the brighter and created a number of opportunities in the opening 20 minutes, but as the game wore on the home side took control and booked a semi-final place as Wilfried Zaha and Will Hughes scored late on.
It is the first time Palace have beaten Everton twice in the same season as the Frank Lampard's side were unable to build on their league victory over Newcastle United on Thursday and are now left to concentrate on their relegation fight.
Palace took the lead on 25 minutes when poor Everton marking from a corner allowed Guehi to head home Michael Olise's dangerous delivery.
They got a second when Eberechi Eze and Zaha combined to set up Matete for a low finish four minutes before the break.
The third was scored in bizarre fashion as Olise's mis-hit shot looped onto the post and provided a tap-in for Zaha, before Hughes scored in similar fashion from a rebound after Jordan Pickford saved brilliantly from Conor Gallagher.