Having won the 100m and 400m individual medley finals on Saturday, the 26-year-old added victory in the 200m IM and 200m backstroke on Sunday.
Phelps comfortably took the individual medley final in a time of 1 minute 51.89 seconds, then timed 1 min 50.34secs to win the backstroke final by more than a second.
He declined to race in Sunday’s 100m butterfly final, having qualified second fastest from the heats, but Phelps looks to add more Olympic titles in London to the eight he won at the 2008 Games and six in 2004.
The US star has repeatedly said he is happy with his form for next July’s Olympic Games with the US trials set for June.
“I am quite happy with the way things are going, I was here to test myself and see how good I am at the moment,” he said, looking relaxed and in the same top condition he showed in Beijing.
“I am in good shape and feel a lot stronger than I was a year ago. Now, it’s a case of keeping the training going and putting the work in.”
Phelps stayed away from the freestyle events, avoiding going head-to-head with Germany’s Paul Biedermann, who dominated both the 200m and 400m freestyle here, also in world best times.
“He is one of the swimmers who makes me want to get into the water to compete against him,” said Phelps of the German, who beat him in the 200m freestyle in Moscow last week.
“I have the greatest respect for Paul.”
US teenager Melissa ‘Missy’ Franklin is proving she will be a name to look out for in London as the 16-year-old broke the 200m backstroke world record on Saturday.
This is the first time a record has been broken since the ban on high-tech swimsuits in 2009.
“I still can’t believe it,” said the teenager, who was mobbed for autographs by fans as she left the Berlin stadium. “It is all so unbelievable; I didn’t even know what the world record was before the race.”
“These World Cup races are great fun, and I am having the time of my life with this team,” Franklin said.
She backed up her record with victory on Sunday in the 100m backstroke and 100m freestyle, when she beat reigning Olympic champion Britta Steffen, who finished third, and came close to Natalie Coughlin’s US record of 51.88 secs.
But the teenager had to settle for second behind Britain’s Francesca Halsall in the 100m IM.
Steffen, who was racing in her home town, was over-shadowed as the double Olympic champion finished second in Saturday’s 50m freestyle final behind world champion Therese Alshammar and third in Sunday’s 100m final.
“I am a very ambitious girl and therefore a bit disappointed,” admitted the 27-year-old Steffen. “Maybe I should be happier with what I did here.”