Unfortunately Globe.prototype.getHeight doesn't take a group of points at a time like sampleTerrain does, though I believe that with Globe.prototype.getHeight there is no promise/when waiting, the renderable tiles are already present in local memory. Though as Matt mentioned sampleTerrain should work in a web worker as its difficult for web workers to access resources in the main thread.
I wonder if it's possible to force a section of terrain to stay fixed at a certain level of LOD regardless of how far the camera is so you wouldn't have to recalculate each time the LOD changes. If you follow the highest detail of terrain then it displays a lower detail level of terrain there would be gaps and buries.