Hi @Sruss
I hope that you are doing excellent , I am sorry for the delay!
Semihost is an invasive debug technique that requires more additional flash and SRAM resources. Usually semihosting is not recommend for applications running on the field. Personally I would recommend using it only during a debug session, as it may provide a hard-fault when the application is running without a debug session. See this reference from the semihost hardfault file.

However, you mention: I have tried it numerous different ways and the bottom line is that the board does not receive CAN messages when it is in Semihost console (and when the debugger is plugged in and running in Debug mode). ... Is there some "trick" to getting FlexCAN to work correctly in debug mode?
I can not recall problems to debug while using semi host and FlexCAN examples on the FRDM-K64F . Also from your description I think that the FlexCAN works properly when using UART console, correct?
I think that you can simplify the problem investigation by testing how semi host works with FlexCAN , but setting a FLEXCAN loopback mode and therefore using a single board. I am not sure of which MK22 variant do you have but probably you could take a look at the FRDM-K64F (MK64 FN of 1MB of flash and 120 MHz) FlexCAN loopback demo as a reference.
Additionally it would be good to check what is the state of the board that no longer receives messages, if actually the FlexCAN does not get a message buffer, or if there is a stack overflow or another processor error.
Many thanks for your patience.
Diego.