JOEBOBSICLE seems to be forcing a square peg into a round hole (while thinking it's the others who are doing that).
5us context switch is totally unacceptable in many applications. An RTOS cannot replace a classical interrupt-based system. It has completely different purpose. RTOSes are for higher-level control systems. Simple bare metal interrupt-based systems are used to control electronics. This usually isn't about having several parallel computation tasks and guaranteeing they get a certain CPU time %. If you are doing that, time-multiplexing calculation in many interrupts, and sharing a lot of data between there threads, you likely want an OS.
But, for example, if you need to build a 3-phase inverter motor controller with current sensing, you definitely do not use an RTOS on the firmware. You initialize the PWM generation timer, calculate FOC algorithm in the timer interrupt, and possibly have another set of interrupts for overcurrent, desaturation, DC bus overvoltage events etc., all of which can be triggered in some hundreds nanoseconds, not 5µs.
Sure, both approaches can coexist (a more sophisticated inverter could use an RTOS and interrupts, or even opt for two-chip solution where another microcontroller runs bare metal and another runs a full-fledged OS, RT or not), but then you need to understand and be able to do both. If the total complexity doesn't require an RTOS, then it's just extra weight. This would be the OP's case.
I also fail to see how an RTOS magically makes variables atomic. The programmer needs to remember to use specific atomic constructs, just like in bare-metal.
All ARM Cortex microcontrollers implement interrupt priorities; it's very simple to use; one LoC of initialization, and one LoC to set the priority for the interrupt.
Finally, as JOE himself says, "Quite frankly a lot of people don't understand thread safety." I wholeheartedly agree. The problem doesn't go away with RTOS; quite the opposite, much of the problem is created by the OS, you bring in mutexes, possibilities for deadlocks, thread synchronization, all that pile of complicated shit many of us fail at. Of course, the problem originates from the hardware (and the OS abstracts it to look different) so not using an OS isn't a magical solution either, but a simple interrupt-based bare-metal system is easier to understand as long as it really stays simple enough not to warrant the added abstraction. This would be the case for the OP.
The idea of something being "modern" and having to be used only because of that is dangerous. Use the right tool for the job.