The Gunners made a disastrous start in north London, as Jakub Kiwior failed to deal with a long ball forward and Jean-Philippe Mateta charged through on goal to finish past David Raya in the opening minutes.
Palace still held the lead at half-time, forcing Mikel Arteta into changes as Martin Odegaard and William Saliba were introduced, but it was Jesus who took centre stage.
It had been more than a year since his last goal at the Emirates Stadium but he managed three in 27 minutes here to send Arsenal into the last-four.
Odegaard played Jesus in on goal for the first, with the Brazilian producing a wonderful dinked finish over Dean Henderson, before he relied on pure power to beat the goalkeeper for a second time when picked out by Bukayo Saka, another second-half substitute.
That put Arsenal in front and the result appeared to be sealed with just under ten minutes remaining. Jesus was completely free on the halfway line, Odegaard picked him out and he had the Palace half to himself as he strolled through and again found the bottom corner to secure the match ball.
But Palace were given late hope when [Eddie Nketiah](/topic/eddie-nketiah) headed in against his former club, setting up a grandstand finish as Palace pushed to send the tie to a penalty shootout.
The Gunners held firm, though, to book their place in the last-four, with the draw to take place on Thursday night.