My experience with Bluetooth support in Linux is: you're either using one of the very few problem-free BT controllers and it works okay most of the time, or you have more or less problems all of the time.
The least problematic controllers I own are ASUS USB-BT500. The most problematic are ASUS USB-BT400 and Realtek RTL8821CE.
The state of Bluetooth in Linux is completely terrible, it has been for many, many years and it's hardly getting any better. Bluez, like Pulseaudio, needs to die, and sooner rather than later.