The Surrey fast bowler took 3-33, including a wicket with just his second delivery in international cricket, to help restrict the Proteas to 174-8 batting first.
The 23-year-old, son of former Zimbabwe batsman Kevin Curran, was born in Cape Town.
And another South African-born Surrey player in Jason Roy also starred with a blistering innings of 67.
But his controversial dismissal for obstructing the field in the 16th over of England’s chase proved the turning point of this match as South Africa levelled the series ahead of Sunday’s finale in Cardiff.
Roy’s first half-century in 11 international matches was a welcome return to form for the opener, who had been dropped from the ODI team for last week’s Champions Trophy semi-final defeat by Pakistan.
But England were left smarting by his dismissal that came after he was deemed by third umpire Tim Robinson to have deliberately moved into the path of the ball to stop a run out.
Despite defeat, Curran will be delighted with his stunning start to his international career.
The 23-year-old, born in Cape Town, had the first and final words of a South Africa innings that had at one point looked as though it might surpass a total of 200.
Taunton is known as the flattest pitch in the country – witness the 834 runs Somerset and Nottinghamshire scored between them here in a recent 50-over match.
So his debut performance, after Morgan had won the toss and opted to put South Africa in, was impressive.
After bowling Reeza Hendricks with his second delivery he dismissed Chris Morris and Andile Phehlukwayo in the penultimate over of the innings to help England restrict South Africa to a manageable total.
JJ Smuts, AB De Villiers and Faarhaan Behardien had all made significant contributions.
Smuts, out for a duck during his side’s nine-wicket defeat in Southampton on Wednesday, made 45 from 35 balls here before perishing to spinner Liam Dawson.
De Villiers then delivered an explosive 20-ball cameo that saw him reach 46 by smashing David Willey into the neighbouring River Tone before top-edging the very next ball to cover.
In between Liam Plunkett, who bowled brilliantly on his return to the side in place of the rested Mark Wood, picked up the scalps of wicketkeeper Mangaliso Mosehle and the dangerous David Miller.
Behardien, who like De Villiers scored a half-century in the first match of the series, scored a brisk 32 from 21 balls to ensure his team set a competitive target.
England lost Sam Billings, opening in place of the rested Alex Hales, in the second over of their reply.
But Roy and Jonny Bairstow kept the run chase motoring along, guiding the hosts to 92-1 at the halfway stage of the innings – meaning 83 were needed from the final 60 balls.
Roy reached his fifty in 33 balls with a towering six off spinner Tabraiz Shamsi.
But, after Bairstow fell for 47, Roy was dismissed in controversial circumstances in the 16th over.
Taunton-born Jos Buttler, captain Morgan and another debutant in Liam Livingstone followed as England were left needing 11 to win from the final over.
And despite Dawson hitting the penultimate ball of the match for four, they fell short.