The win lifted Messi’s team, recovering from two successive defeats, into fifth place in the South American group with 19 points, one behind Ecuador and Chile, who beat Uruguay 3-1 with an Alexis Sanchez brace.
Brazil, away to Peru in Lima in a later match, top the table with 24 points while Uruguay are second with 23. Colombia dropped to sixth on 18 points.
The top four go through to the 2018 finals in Russia with the fifth, at present Argentina, qualifying for an intercontinental playoff for another berth.
“It’s hard to analyse (the match) when you concede those kinds of goals and the more so when one team has a player like Messi,” said Colombia coach Jose Pekerman.
“With the second goal, the match became practically impossible (for us). You try to get goals back but we couldn’t and Messi made the difference.”
Argentina took a ninth-minute lead when Messi curled his free kick over the wall and into the top left corner of David Ospina’s net off the underside of the bar for his 57th Argentina goal.