it's a bit of an unfortunate thing to say, but it's not going to get much better than this.
If you haven't been using --debugger:native already, that does makes some things like breakpoints work atleast in theory. Though if you have ever debugged C++ code, you know that when turning on the slightest optimisations, things can already get messy. Add another layer on top and you set a breakpoint and it might trigger a bit above or below, it might also just never trigger at all. There was a GDB Python script which did some demangling, but supposedly it never worked that well or at all with GDB GUIs, it only ever worked with the old runtime (so pre arc/orc) and to my knowledge hasn't really been maintained.
