I was having the same kind of problem (low maximum volume) with some of my bluetooth buds (under Xperia 10 ii, 4.3.0.12). In my case, it seems to be linked to the invalid handling of volume in AVRCP.
May be not universal, but for me the solution was to disable avrcp in bluez :
Edit “/usr/lib/systemd/system/bluetooth.service” to add “–noplugin=avrcp” parameter to the ExecStart command :
ExecStart=/usr/libexec/bluetooth/bluetoothd --noplugin=avrcp -n $TRACING
Restart the bluetooth service :
systemctl daemon-reload
systemctl restart bluetooth
Unpair and repair the problematic headset.