Some controllers have a hard coded low voltage cut off that doesn't change no matter what even if you wire in a different voltage battery pack, yes. Some also have a max voltage built in and will refuse to run above it while others will try and fry any MOSFETs that aren't specified to have a max voltage high enough.
Some controllers are smart and will decide the low voltage cut off to apply to the pack based on the initial voltage. Others have some solder pads you can jump to change between hard coded settings for a couple common voltages like 36, 48, etc.. Others like Grin's Phaserunner have a programming cable and computer program you can use to change various settings like that.
A good battery pack will have a BMS that enforces a low voltage cutoff voltage as well which is independent of the controller's setting.
Re fuel gauge, the cheapest systems do use voltage, but it's not particularly accurate. The relationship from voltage to charge percent isn't linear and there are relatively flat parts of the curve, especially in certain battery chemistries. It varies with pack age as well.
Better fuel gauge systems will use a coulomb counter that tracks amount of power in and out. Mid range systems may try to keep some statistics to better guess fuel gauge based on voltage and have to be reset when you change battery packs.
Displays don't typically have any logic at all and just show a number they receive from the controller via the rx wire. I suppose there might be some very basic number read out display built into a throttle without tx and rx lines that might try to measure voltage with a shunt of its own or something, though.