what works for me is to call - bluetoothctl power off; bluetoothctl power on
I’m using a quirk like this for now:
$ cat /etc/systemd/system/suspend-bluetooth-quirk.service
[Unit]
Before=sleep.target
StopWhenUnneeded=yes
[Service]
Type=oneshot
RemainAfterExit=yes
ExecStop=-/bin/bash -c 'bluetoothctl power on'
ExecStart=-/bin/bash -c 'bluetoothctl power off'
[Install]
WantedBy=sleep.target