Alternatively, for each cluster, render the edge triangles of the cluster at the neighbouring cluster's resolution with Z-write disabled, then render the cluster (overdrawing the real edge triangles), then render the Z-write of the edge. That'll reasonably fill the cracks with little overhead.
How does the streaming part work? I don't think this article mentioned it.