The 29-year-old made an early breakthrough when he dismissed New Zealand opener Hamish Rutherford for three then returned to rip through the middle order on the opening day at Queen's Park Oval in Port of Spain, Trinidad.
He claimed the scalps of Jimmy Neesham (15) as well as BJ Watling and Ish Sodhi, both for ducks, to trigger a New Zealand batting collapse and finish with four wickets for 34 runs in his second test since 2009, having been recalled for the first test last week.
The visitors, comfortable winners of the series opener in Jamaica, were cruising at 120-1 in the 43rd over when the wheels suddenly fell off.
They lost their last nine wickets for just 101 runs to be all out for 221 late in the final session when a much bigger score beckoned.
"After the first session, we went back out knowing that we had to give ourselves a chance to get into the game and just be a bit more patient," Taylor told reporters.
"It just goes to show that whenever you're patient and you're disciplined it pays off," he said.
Opener Tom Latham top scored with a patient 82 off 163 balls to register his third half-century in as many innings but missed out on a maiden test hundred when he edged Kemar Roach to gully just before tea.
"Things are going nicely. But it would have been nice to push on and get a big one," Latham told reporters.
"The time I got out wasn't ideal team wise so that was probably the most disappointing thing," he said.
Latham also shared a 104-run partnership with Kane Williamson (42) for the second wicket but the only other New Zealander to make more than 15 was Ross Taylor, who finished unbeaten on 45, batting at four.
Once Latham departed, New Zealand's tail offered little resistance, with West Indian spinner Sulieman Benn picking up three wickets after Taylor had inflicted his damage.
"I think Taylor was exceptional, especially that spell after lunch." Latham said. "He certainly put the ball in the right areas for a good amount of time and made it hard for us," he added.
New Zealand did pick up a vital wicket late in the day - when pace bowler Trent Boult clean bowled explosive opener Chris Gayle for one - to reduce the home side to six for one at stumps.