Desperately needing a win to push their case, Colombia scored through Juan Vidal (3rd minute), Juan Penaloza (67th) and Dieber Caicedo (87th) to seal the win and finish second in Group A behind Ghana.
USA's lone goal was scored by George Acosta in the 24th minute.
USA, who had earlier defeated hosts India 3-0 and Ghana 1-0, tasted their first defeat of the tournament.
This was Columbia's second win after they defeated India 2-1 in New Delhi.
More From This Section
Columbia took the lead in the third minute. A long throw by Andres Cifuentes inside the box found Vidal who slammed the ball into the right-corner of the goal.
USA soon missed a golden opportunity when Acosta hit wide after a fine one-two with skipper Josh Sargent.
In the first 22 minutes USA had the better share of ball possession, but they failed to find the equaliser.
USA'a equaliser came in the 24th minute, courtesy a stunning right-footer by Acosta.
USA were denied a chance to take the lead in the 37th minute after a free kick by Sargent took deflection of the Columbian wall before going wide.
At the half-way stage, the two teams were levelled at 1-1.
After the break, Columbia had at least three chances to score.
Columbia's defence stood tall and barring the 24th minute goal did not give any open space to the American strikers.
Columbia had another chance in the 60th minute but Andres Perea's shot from outside the box was saved well by USA goalkeeper.
The South American side increased their lead in the 87th minute with Penaloza providing the winning assist to Caicedo.