Miralem Pjanic set up Vedad Ibisevic for the opening goal after 29 minutes, though Ibisevic missed a great chance for a second soon after following a near-identical pass from Pjanic.
Pjanic was again the provider for Edin Dzeko to score the second after 35 minutes and six minutes later they changed roles, with Pjanic hitting net after a pass from Dzeko.
Bosnia coach Safet Susic will be delighted that he opted to rest the injured Pjanic for from Friday's goalless draw in Greece, saving him for Tuesday's match.
Bosnia and Greece, who won 1-0 in Slovakia, both have 10 points from four games, with Slovakia third on seven.
"We scored three goals within 15 minutes," Susic said. "The second half was rather thin but we accomplished our goal to have 10 points this year."
SLOVAKIA 0-1 GREECE
Greece kept pace with Bosnia at the top of Group G with a 1-0 win in Bratislava against Slovakia in wet conditions.
Dimitris Salpingidis scored the only goal of the game on 63 minutes despite the home side boasting the majority of the chances. Kostas Katsouranis put him through on goal and he made no mistake as goalkeeper Dusan Kuciak advanced.
Slovakia pressed for an equaliser and the closest they came was an 83rd-minute Michal Breznanik shot that was just over.
Slovakia are now three points behind the top two.
LATVIA 2-0 LIECHTENSTEIN
Latvia collected their first points of the 2014 World Cup qualifying campaign at the fourth attempt with a 2-0 win over 10-man Liechtenstein in Group G in Riga.
Latvia went ahead when Vladimir Kamess scored his first international goal from a cross by Olegs Laizans in the 29th minute.
Liechtenstein, who also lost their first three matches, had Daniel Kaufmann sent off for a second booking on the hour as Latvia took complete control in front of just over 4,000 fans.
Edgars Gauracs made the game safe in the 77th minute with a clinical finish after latching onto Aleksandrs Cauna's incisive pass.
- Vedad Ibisevic