His average rose to 45.96, the best by any New Zealander with a minimum of 20 test innings.
Williamson did have some luck yesterday.
He was dropped twice before wicketkeeper Prasanna Jayawardene put him down at 104 off Rangana Herath. At 233, Jayawardene badly missed a stumping off the luckless Herath when Williamson was stranded down the pitch.
Watling, by contrast was chanceless in completing his fourth test century and only McCullum, with five, has more for New Zealand among specialist wicketkeepers.
Sri Lanka needed to win this test to level the series, after losing the first by eight wickets in Christchurch.
Williamson, who batted 10h 23min and faced 438 balls, and Watling - eight hours and 333 balls faced - all but put that idea to bed yesterday. Unless Sri Lanka pull off what would be the highest successful fourth innings run chase in the Basin Reserve's history, New Zealand will have completed six successive test series won or drawn.
At stumps, needing 390 to win, Sri Lanka were 45 for one, having lost opener Dimuth Karunaratne to a poor shot, caught at mid off from offspinner Mark Craig. Kaushal Silva was on 20 and Dhammika Prasad on 1.
NZME.