Are you using WirePlumber and pipewire-pulse?
Looks like NixOS's pipewire service enables WirePlumber by default. Not sure if it changed recently from media-session, and that's why it's gone unstable, or if it's something else.
Might also help to test out pipewire-media-session to see if that helps, too.
My macbook can't even figure out that it should try to connect to my offce trackpad after I have had it connected to my home trackpad! Thankfully it has a built in trackpad that I can use to manually connect when the "automation" fails..
I had a 12" MacBook no-adjectives in the past which didn't even work with AirPods well. I was hoping the M1 would have a better BT stack (the iPhone's...)