I guess it depends on how you're jumping about within the buffer with 2d.wave~ - if you're making discrete jumps, you're going to get clicks, but you can smooth the y (rows) input with something like rampsmooth~ to reduce the effect.
However, in my experience the worst clicks you get with 2d.wave~ are not coming from jumping about within the buffer using the y input, but from basic looping (i.e.the x input), and for that you need some kind of ducking or crossfading.
There is an abstraction or sub-patch somewhere in the example patches (sorry, not at a Max machine right now) called wavefader, which crossfades between two wave~s - substitute 2d.wave~ for wave~ and you're heading in the right direction, though I'll admit it's not perfect.
It works well with percussive sounds where the clicks and pops are often masked by the transients of the sounds themselves, but have yet to find a solution that works well with more melodic material.
Maybe the answer is to do like Eno says and "Honour your mistakes as intentions", i.e. call it 'glitch' ;-)
Cheers
Roger