The visitors had Roman Zozulya sent off in first-half stoppage time but took the lead six minutes after the restart through Denys Harmash.
Yevgen Konoplianka made it 2-0 in between the dismissals of Montenegro's Vladimir Volkov and Savo Pavicevic, and Artem Fedetskiy and late substitute Romas Bezus added further goals.
Both teams are battling for a qualifying spot with England, whose manager Roy Hodgson had expressed his hope for a draw given that Montenegro led the group by two points while victory for Ukraine would bring them within a point of his side with two games against minnows San Marino to come.
The latter scenario played out, though Hodgson will still be encouraged by the suspensions awaiting both teams and would also welcome fourth-placed Poland being surprisingly held by Moldova.
Ukraine started brightly and Konoplianka shot wide before Andriy Yarmolenko's effort was saved uncertainly by Mladen Bozovic.
But Montenegro twice went close to an opener in quick succession.
First defender Ivan Kecojevic met Elsad Zverotic's free-kick but fired over from close range, then Mirko Vucinic cracked a right-foot shot against a post.
Vucinic had another effort tipped around the post by Andrei Pyatov before Ukraine came back into the game, Harmash shooting wide before Konoplianka's free-kick was parried by Pyatov.
And the visitors were also denied by the woodwork when Yarmolenko hit the upright from 12 yards out.
Pyatov repelled Vucinic's free-kick before, in the 47th minute of a lively first period, Zozulya was dismissed for violent conduct in an incident which also saw team-mate Fedetskiy and Montenegro's Vlad Bozovic booked.
Montenegro sought to take advantage early in the second half but Filip Kasalica shot wide.
And instead it was Ukraine who took the lead when Mladen Bozovic fumbled Yarmolenko's long-range shot and Harmash squeezed the rebound between the keeper and Kecojevic and in off the far post.
Pyatov saved from Vucinic before referee Manuel Graefe reduced the game to 10-a-side, showing Volkov a second yellow card for a foul on Yarmolenko.
Milorad Pekovic headed Zverotic's free-kick wide but Ukraine doubled their lead in the 77th minute when Yarmolenko set up Konoplianka to finish from 12 yards.
Pavicevic's frustration immediately got the better of him and he collected a second booking for a foul on Edmar.
Yarmolenko hit a post and, after Vucinic tested Pyatov at the other end, Fedetskiy made it 3-0 with Yarmolenko again the supplier.
Bezus was introduced as a substitute in the 91st minute but had time to make his presence felt with a goal two minutes later, firing home right-footed.
Source: Mail Online