The win put Argentina third in the South American group with 11 points from six matches, two points behind joint leaders Ecuador and Uruguay.
Ecuador suffered their first loss in the group, going down 3-1 in Colombia, while Uruguay scored a 1-0 home win over Peru.
Argentina defender Gabriel Mercado, who scored the winner in Thursday’s 2-1 away victory over Chile, opened the scoring in the 21st minute against Bolivia.
Argentina were awarded a penalty in the 29th minute after Ronald Eguino fouled midfielder Ever Banega, and Messi made no mistake from the spot to net his 50th goal for Argentina, putting him within six of Gabriel Batistuta’s record.
“This (campaign) is very long and what’s important is that we won and remain on course,” Messi told TyC Sports. “I’m happy with goal number 50 but more because we won and this helps to keep growing.”
Argentina coach Gerardo Martino said it had been crucial to get the two wins.
“It was fundamental to get the six points,” he told TyC Sports of the two wins. “I think we played a serious match and won well.”
Argentina could have gone ahead after 10 seconds with a quick attack down the left from the opening kickoff but Angel Di Maria’s shot was blocked by goalkeeper Carlos Lampe and Banega hit the bar with the rebound.
Di Maria limped off after half an hour and was replaced by Angel Correa.
Argentina squandered several other chances to score against a side they put 12 goals past in two friendlies last year. They are a point ahead of Colombia and Chile, who came from behind to beat Venezuela 4-1.
Brazil and Paraguay have nine points after their 2-2 draw in Asuncion.
The top four teams in the 10-nation group qualify for the 2018 World Cup finals, while the fifth-placed side goes into an intercontinental playoff.