Phelps led from start to finish in the 200m Individual Medley and held off fast-finishing USA team-mate Ryan Lochte down the final freestyle leg to win in 1:54.27, just 0.04 outside his own Olympic record.
It means Phelps is the first man to win the event at three consecutive Games, and it came just 48 hours after he won his 18th and 19th medals to become the most decorated Olympian in history, overtaking Russian gymnast Larisa Latynina, who won 18.
Lochte, who had been forced to settle for bronze in the 200m Backstroke final 30 minutes earlier, took silver in 1:54.90, with Hungary's Laszlo Cseh taking bronze.
Phelps, who will retire after the Games, said: 'To be able to win the gold medal and be the first to three-peat is something very special and something I am very happy about.'
Phelps could also win the 100m Butterfly title for the third time in succession after later returning to the pool to win his semi-final in 50.86 and advance to the final as fastest qualifier.
USA swimmers won three of the four finals on Day 6, with Soni getting the ball rolling in style, claiming gold in the 200m Breaststroke by smashing her own world record.
The 25-year-old took control of the race after the opening length and touched in a time of 2:19.59, slicing more than four tenths of a second off her previous time. Japan's Satomi Suzuki claimed silver, with Russian Iuliia Efimova taking bronze.
'I wasn't trying to focus on records or medals or anything, I just wanted to swim one more race the way I knew I could,' Soni said. 'It has been my goal since I was a little girl to swim under 2.20, my coach told me I could be the first woman to swim 2.19 and I have been chasing it ever since, and I am just so happy.'
Tyler Clary then took gold in the 200m Backstroke ahead of Japan's Ryosuke Irie and defending champion Lochte, clocking an Olympic record of 1:53.41 as Lochte faded on the last length.
The Netherland's Ranomi Kromowidjojo ensured there would not be a clean sweep of the evening's four finals by USA swimmers, powering to victory in the 100m Freestyle and lowering her Olympic record - set yesterday - to 53.00.
The 21-year-old was only fourth at the turn but stormed down the final length to finish ahead of Aliaksandra Herasimenia and China's Yi Tang.