How to automatically unload distant HLODs in World Partition?

It took a lot of experimentation, but I figured it out.

The solution is to change the runtime hash class to WorldPartitionRuntimeSpatialHash instead of the default WorldPartitionRuntimeHashSet.

The difference between these two is not documented anywhere as far as I can tell, but this change made world partition behave the way I want for me.

And I only needed a single HLOD Layer.

The Loading Range in the HLOD layer then controls at which distance are the HLODs loaded in.
Loading Range in World settings controls at which distance are the actual actors loaded in, replacing the HLOD.