Have been playing a while with these parameters with my cartesian printer and BLTouch.
What I found is:
Z_PROBE_BED_DISTANCE
stored in Eeprom named Min Nozzle Distance
is the starting Z position used only for probing/levelling (G30, G32),
it is not used when ZHoming. (ZHOME_PRE_RAISE_DISTANCE is used there)
I started with 10 and optimized to 5
Z_PROBE_HEIGHT
imagine the hotend and mounted ZProbe is moving slowly to the bed. The ZProbe will trigger at a certain level.
At this trigger level the nozzle has a certain distance to the bed, maybe 2,0 mm.
Now you set Z_PROBE_HEIGHT to 2,0
So Z_PROBE_HEIGHT is the distance between ZProbe Trigger point and the Z=0 position of the nozzle.
I'm using Z_PROBE_HEIGHT for fine tuning this distance.
In other words: At the ZProbe Trigger position the Z-Position of the nozzle is set to Z_PROBE_HEIGHT