Colombia had the bulk of possession but lacked quality in the final third, while Peru were opportunistic with Sergio Pena's 17th-minute opener and offered a slice of fortune with Yerry Mina's own goal in the 64th minute.
La Tricolor, who had collected four points from their opening two group games and not conceded a goal, had levelled via Miguel Borja's penalty eight minutes into the second half.
Peru were routed 4-0 by defending champions Brazil in their opener, but bounced back to move into third spot in the five-team Group B, with four nations advancing.
Colombia had the first shot of the match inside the opening 60 seconds, when Duvan Zapata curled an effort wide.
Peru took the lead against the run of play in the 17th minute, when an unmarked Sergio Pena lashed home a rebound from inside the box after Yoshimar Yotun's awkward shot hit the post.