It just wasn't designed for this - it wasn't designed
The problem is that Bluetooth just wasn't designed for anything nearly as complex as what it's doing. It was just supposed to be wireless RS-232 (serial port) for a single un-encrypted point to point audio link!
Then, since it was there (oh hey, we've got a wireless data stream?), people just started cramming more and more 'features' and s@#$ into it. So it was never designed - it was accreted. Obviously parts were designed, but that's no substitute for a system vision. And once you get an industry consortium involved it just explodes in complexity as they all try to parasitically infect the standard with their own internal protocols / standards, and often succeed.
Given all that it's stunningly, stupidly complex for no good reason. One of the worst protocols I ever had to work with and a security nightmare (because, like Flash, it wasn't designed with security in mind) There are tons more exploits lurking in the stacks.
Why does everyone still use it? Because it's an existing cross-platform standard (chicken and egg), and it mostly works if you beat your head on it enough.