Breakpoints, watchpoints and triggers should be working. Breakpoints can be hit only when MCU isn't sleeping and when it hits your breakpoint. I think either your MCU is still sleeping or maybe COP or other reset happens while MCU is in WAIT mode. Reset resets all breakpoints registers and debugger has to reinitialize them.
Regarding halting MCU while in wait mode. I also can't do that and am compiling with some DEBUG macro defined, which suppresses my WAI code. To remind me code is compiled with DEBUG is enabled, I have something like this in my code
-----------
#ifdef DEBUG
#warning DEBUG blablabla
#endif
-------------
Regarding WAIT mode and BDM we have this in S12XD datasheet:
15.1.2.3 Low-Power Modes
.. When CPU is in a low power mode (wait or stop mode) all BDM firmware commands as well as the hardware BACKGROUND command can not be used respectively are ignored. In this case the CPU can not enter BDM active mode, and only hardware read and write commands are available...
BACKGROUND command is what is used to halt MCU.