The win revives Ukraine's hopes of reaching next year's finals in Brazil and leaves second-placed England within two points of top spot with a game in hand. Ukraine are now third, just one point behind England.
"Now we won't know anything until the end," said Montenegro coach Branko Brnovic. "We have a team that can bounce back. This was our worst game."
Ukraine triumphed with second-half goals from Denys Garmash, Yevhen Konoplyanka, Artem Fedetskiy and substitute Roman Bezus, having been reduced to 10 men just before halftime.
Roman Zozulja was shown a straight red card for elbowing Montenegro's Vladimir Bozovic off the ball but Ukraine still took the lead through Garmash after 52 minutes when the midfielder turned in a parried shot low off the left post.
Montenegro then had Vladimir Volkov shown a second yellow card after 66 minutes and Konoplyanka added a second goal for Ukraine 11 minutes later, firing home from the edge of the area after a twisting run down the right flank by Andriy Yarmalenko.
Montenegro were reduced to nine men when Savo Pavicevic was dismissed by German referee Manuel Graefe in the 79th minute and Ukraine capitalised on their numerical advantage.
Fedetskiy scored in the 85th and substitute Bezus produced a fine individual goal in added time, running at the Montenegrin defence before clipping the ball over keeper Mladen Bozovic.
Montenegro striker Mirko Vucinic produced the home side's best chances, hitting the woodwork in the first half and twice testing goalkeeper Andriy Pyatov with long-range efforts.
Montenegro coach Brnovic rued not substituting Volkov before his second yellow card, saying: "This was one of those games. Whoever scores first goes on to win."
Montenegro stay on 14 points from seven games ahead of England with 12 from six, while Ukraine are on 11 points from six, two points above Poland who drew 1-1 away to Moldova.
"It was difficult going into the break a man down," said Ukraine coach Mikhail Fomenko. "At the break we were able to change the tactics and get the result. I can't say Montenegro played badly, they just played as they could."
"Now we're one point behind England, but we have to make up for lost points."
Poland's qualifying hopes took another serious knock when they were held to a 1-1 draw by Group H strugglers Moldova in Chisinau.
Captain Jakub Blaszczykowski gave the visitors a seventh-minute lead when he coolly slotted the ball home following a perfect through pass from Borussia Dortmund team mate Robert Lewandowski.
Eugeniu Sidorenco equalised from a narrow angle 30 minutes later, firing his first Moldova goal after a cross by Vitalie Bordian.
Poland are fourth in the table with nine points from six matches, five adrift of leaders Montenegro. Moldova are second from bottom on five points.
Mario Balotelli was sent off as Group B leaders Italy were held to a 0-0 draw by Czech Republic.
The AC Milan striker was dismissed by Norwegian referee Svein Oddvar Moen after receiving a second yellow card in the 72nd minute, for catching defender Theodor Gebre Selassie in the face with his forearm.
The Czechs, with Arsenal playmaker Tomas Rosicky pulling the strings, failed to make the most of a hatful of good scoring chances.
Petr Jiracek was unable to latch on to a loose ball with only goalkeeper Gianluigi Buffon to beat and the same player also hit the woodwork in the 84th minute after connecting with a Jaroslav Plasil free kick.
At the other end of the field, Italy rarely tested Czech keeper Petr Cech.
The Italians stayed top of the table with 14 points from six games while the Czechs retain outside chances of qualifying on nine points.
Malta won a World Cup qualifier for only the second time in their history when an eighth-minute goal from Michael Mifsud earned a 1-0 victory over Armenia in Yerevan.
It was Malta's first World Cup qualifying triumph since they beat Estonia by the same score in an away match in Tallinn in May 1993.
Friday's result ended their run of five straight defeats in Group B. Although they have no chance of reaching next year's finals in Brazil, the players held hands at the final whistle and celebrated their rare win.
Malta are bottom with three points from six matches, the same number of points as Armenia who won 1-0 in Malta in September but have since lost four qualifiers in a row.
Armenia had 20 attempts on goal compared to Malta's two but could not manage to cancel out record scorer Mifsud's strike which came after goalkeeper Roman Berezovski parried his first shot and failed to stop his follow-up.
A late goal by defender Tom Hogli prevented Albania going to the top of the Group E table as they drew 1-1 with Norway.
Valdet Rama put the home team in front after 41 minutes when he sprinted down the left wing before cutting in to score.
Fired up by Rama's goal and an enthusiastic crowd, Albania could have scored a second when a Hamdi Salihi header was touched on to the bar by Norway goalkeeper Rune Jarstein.
Hogli was then left unmarked to head Norway back on terms in the 85th minute.
Albania, who have never qualified for the finals of a major tournament, have 10 points from six games, one behind group leaders Switzerland, who face Cyprus on Saturday.
Norway have eight points from six matches.
Meanwhile Iceland led Slovenia 2-1 in Reykjavik but ended up losing 4-2.
An early Helder Postiga tap-in gave Portugal a precious 1-0 home win over Russia at the Luz stadium that injected life into their World Cup qualification hopes and sent them temporarily top of Group F.
Postiga scored the opener after only nine minutes of the match on an unseasonably cold evening in Lisbon, pouncing on an inviting Miguel Veloso free kick from the left for his 26th goal for Portugal.
After some under-par performances, the win means the hosts maintained their hopes of qualifying for what is for them a particularly special World Cup in 2014 in Portuguese-speaking Brazil.
Portugal provisionally go top of group F, three points ahead of third-placed Israel and two in front of Russia who are still favourites to win the group with two games in hand.
Azerbaijan drew 1-1 with Luxembourg in the night's other Group F game.
Bosnia thrashed 10-man Latvia 5-0 with all the goals coming in a second-half onslaught as the Group G leaders stayed on course to reach their first major finals as an independent nation.
Second-bottom Latvia had midfielder Aleksandrs Fertovs sent off for a reckless tackle on Elvir Rahimic after 11 minutes after which it was a matter of time before Bosnia scored.
Winger Senad Lulic got his first international goal and set up a second for Bosnia as the Balkan nation moved to 16 points from six matches to remain three points ahead of second-placed Greece who won 1-0 in Lithuania.
Third-placed Slovakia are a further four points adrift of the leaders after being surprisngly held to a 1-1 draw by bottom side Liechtenstein, who picked up only their second point.
Having missed a hatful of chances in the first half after Fertovs was dismissed, Bosnia finally broke the deadlock in the 48th when Lulic turned in a Mensur Mujdza cross from the right.
Roared on by several thousand visiting fans, Bosnia doubled their lead five minutes later after Lulic curled in a delightful cross for striker Vedad Ibisevic to head home from 10 metres.
Midfielder Haris Medunjanin scored the third soon after the hour with a brilliant shot from 25 metres into the top right corner, leaving goalkeeper Andris Vanins rooted to his line.
Vanins had made a string of super saves to deny the visitors even more goals but was powerless to stop his side's mauling in the closing stages, as Bosnia continued to attack.
Midfielder Miralem Pjanic made it 4-0 with a crisp low shot from 12 metres in the 80th and Bosnia striker Edin Dzeko completed the rout barely a minute later with a cool finish after he raced clear of his marker.
Lazaros Christodoulopoulos headed the only goal as Greece secured a well-deserved 1-0 victory over Lithuania which kept them in touch with the leaders.
Fernando Santos's team went ahead in the 20th minute through Christodoulopoulos's strike and could have added to the scoreline but for profligacy at the LFF Stadium in Vilnius with striker Dimitris Salpigidis hitting the post in the 89th minute.
Greece looked the most accomplished side for long spells and the winning goal came from a fine move with left-back Jose Holebas crossing perfectly for Bologna forward Christodolopoulos to plant a firm header past diving goalkeeper Emilijus Zubas.
Slovakia's hopes of reaching a second successive World Cup suffered a huge blow when they were held 1-1 by minnows Liechtenstein.
Liechtenstein, who have only ever won two World Cup qualifiers, stunned the visitors when Martin Buechel skipped past a tackle and scored with a right-foot shot in the 15th minute.
The team from the tiny Alpine principality, backed by a modest 1,600 crowd, were on course for their first competitive win in two years until Jan Durica was left unmarked in the penalty area and headed the equaliser in the 73rd minute.
Third-placed Slovakia, who reached the last 16 of the 2010 World Cup, dropped two points they could not afford to lose as they chase Greece for second place in the group.
They have nine points, four behind the Greeks who won 1-0 in Lithuania. Liechtenstein, who drew 1-1 with Latvia in their last match, have two points.
Finland registered their first win of the qualifying campaign with a 1-0 home victory over Belarus.
Kasper Hamalainen scored the only goal of the game in Helsinki on 57 minutes to settle the Group I contest, which Belarus ended with 10 after having Pavel Nekhaichik sent off in the 90th minute.
The result sees the Finns move off the bottom of the table and ahead of Belarus, who host a second clash between the two nations on Tuesday.