Svitolina won the first set 6-3 and raced into a 5-1 lead in the second before Halep bounced back and took the second 7-6 (6).
Yet to drop a set this year, Nadal will next face either Djokovic or Dominic Thiem in what is touted as the "real final", even though Stan Wawrinka, Andy Murray, Marin Cilic and Kei Nishikori remain in the top half of the draw. "Just pretty bad set".
"He was dictating all the points in the first set, making me move a lot".
"Trust me, I'm thinking about many things", he said.
"I'm grateful for the attention but there are many other players that deserve that as well. I'm feeling like I'm missing consistency", Djokovic said.
"So what is being said is positive, but maybe I won't be up to the challenge".
"I mean, it's a joke how tough it is to win a Slam", said Thiem, the only player who beat Nadal in one of his 23 clay-court matches this season. Their last meeting on that surface was in last year's French Open semifinals, a four-set win for Murray. Novak Djokovic effectively waved the white flag, bowing out of the French Open with a whimper on Wednesday.
He wasted two set points in the opener. Murray advanced to his fourth straight semi-final in Paris, defeating Nishikori to avenge his loss to the Japanese star at the US Open past year.
The 27-year-old player will now play unseeded Latvian Jelena Ostapenko, who stunned Danish 11 seed Caroline Wozniacki 4-6, 6-2, 6-2 for a place in the semi-finals.
Djokovic, whose struggles with form since a third-round exit at last year's Wimbledon have been well documented, had made a steady start at Roland Garros this year with Andre Agassi in his box for the first time.