In their first attack in the 21st minute, the Paraguayans opened the scoring when defender Pedro Benitez headed home a corner from Jonathan Fabbro.
The hosts reacted and Ivan Moreno y Fabianesi had the chance of level the match with a penalty, but his shot was well saved by keeper Diego Barreto.
In the last move before half-time Lucas Mugni, one of the most promising players in Argentinian football, equalised with a precise low shot.
In the 52nd minute, Brazilian referee Sandro Ricci sent off Colon striker Ruben Ramirez and Cerro Porteno's midfielder Walter Lopez, after a fight between the two.
A minute later, the stadium suffered a power failure.
After a 10-minute delay the game resumed, but the hosts were left to wish it had not when substitute Roberto Nanni struck the winner four minutes from time.
"I think this result is very unjust. We maybe didn't show our best football but we were the ones that always searched the victory," Colon defender Maximiliano Caire said.
"They only defended and in two isolated moves produced two goals."
The second leg will be played on October 24 in Asuncion. The winners of the tie will face Argentinian side Tigre or Ecuador's Deportivo Quito.