Fleming was caught on the backward point boundary by Dwayne Bravo for 97 after flicking at a short wide delivery from Fidel Edwards, missing out on a ninth Test century.
Peter Fulton, who had shared in a 165-run third wicket partnership with Fleming, was 75 not out with Nathan Astle on 21.
New Zealand lead by 15 runs with seven wickets in hand.
New Zealand pace bowler Kyle Mills had captured the last two wickets to wrap up West Indies first innings for 192 early in the first session at the Basin Reserve.
Fleming and Fulton came together after New Zealand had slumped to three for two when opening batsmen Hamish Marshall (three) and Jamie How (0) were dismissed off successive balls.
The New Zealand captain then attacked the fired-up West Indies bowlers and seized the initiative back to take his side to 90 for two at lunch.
Fleming continued to attack after the break and raced through to the 90s. It was his 41st Test half century and the sixth time he has been dismissed in the 90s. Four of his eight Test centuries have produced scores in excess of 150.
Fulton, who was dropped by Edwards at mid-off in the first session, proved more decisive in the second and began to play his shots, racing past 50 for the first time in his two-Test career.
The visitors, who began play today at 182 for eight after swing bowler James Franklin had torn through their middle order on the first day, scored just 10 further runs.
Daren Powell failed to add to his overnight score of 16 before he was enticed into a drive by Mills and was caught by How in the gully.
Edwards (nought) was also lured into a big drive in the next Mills over only to take an edge that was well held by Fleming in the slips.
New Zealand lead the three-Test series 1-0 after a 27-run victory in Auckland.