At lunch, New Zealand were 96 for two in their second innings, a lead of 248 with eight wickets remaining, after the West Indies first innings folded at 221.
Williamson was not out 51, his 26th half century, with Ross Taylor on 14.
After resuming the day at 215 for eight, the tourists lasted only 17 deliveries with Trent Boult taking the last two wickets in successive balls to leave him poised on a hat-trick with his first delivery when the Windies bat again.
Test debutant Raymon Reifer was left not out 23.
More From This Section
The West Indies, needing a win to save the series after a heavy innings defeat in the first Test, struck quickly when New Zealand returned for their second bat.
Miguel Cummins snapped up a return catch from Jeet Raval (four) and Tom Latham was lbw to Reifer for 22.
New Zealand wasted a review on Latham's dismissal with video replays showing he was plumb in front.