The featherbed pitch at the Queens Sports Club is a batsman's paradise with just 10 wickets failing in 270 overs in the game so far to see Zimbabwe close in on the visitors’ first-innings score of 582 for four declared.
Ervine took advantage of the conditions to crash an unbeaten 115 after forming a 148-run sixth wicket partnership with debutant Peter Moor (71).
He will be joined on Tuesday by captain Graeme Cremer (2 not out) as the home side look to avoid the follow-on, needing 78 more runs to make New Zealand bat again.
Zimbabwe started the day on 55 without loss and it took until the end of the 36th over of their innings for the tourists to make a breakthrough as Tim Southee bowled opener Tino Mawoyo (26) off the inside edge.
It brought to an end the fifth-longest opening stand in terms of overs bowled in Zimbabwe's Test history.
Sikandar Raza (3) steered Neil Wagner to Kane Williamson at gully, before the latter dived full stretch at short cover to dismiss Chamu Chibhabha (60) with a stunning catch off spinner Mitchell Santner.
Zimbabwe were teetering when Santner bowled Prince Masvaure (2) and Ish Sodhi trapped Sean Williams (16) leg before wicket to reduce the hosts to 147 for five.
Ervine and Moor embarked on a patient rebuild of the innings, with the latter undoing some of his good work when he fell late in the day to a reckless shot as he pulled a poor delivery from Sodhi straight to Martin Guptill at midwicket.
New Zealand lead the two-match series 1-0 after an innings and 117-run victory in the first Test at the same venue.
IMAGE: Craig Ervine
Photograph: Zimbabwe Cricket/Twitter
3rd Test: Kohli likely to persist with Rahul ahead of Vijay
3rd Test against Windies: India must get back to winning ways
Darren Sammy sacked 'in 30-second phone call'
Lodha panel rejects BCCI request of deferring key meeting
'Contempt of court if BCCI top brass doesn't appear before Lodha panel'