Sometimes yes, sometimes no. RTOS makes certain things harder but others easier, certain classes of bugs are RTOS-specific and cannot exist if you don't use one (or at least the particular feature).
Could you give an example of that?
There are some deep theoretical problems (e.g. dining philosophers, byzantine generals, races, deadock/livelock, starvation) that cause problems with and without an RTOS. What else are you considering?
Fundamentally there's nothing special about an RTOS. They provide low-level facilities corresponding to proven design patterns. On top of those it is possible to build higher level applications also using design patterns proven over time. Done properly, it becomes possible to
reason about how an application will behave at a level that is close to the domain specification i.e. abstracted away from many tedious/uninteresting implementation details. That's very valuable, partly because it enables application to be
modelled and
tested at a level that the
domain specialist (who wrote the specification) can understand. Examples from one of my projects, many years ago: "patient breathing in", "patient trusted to breathe on their own", "breath volume", "pressure too high". Other examples are "network node added", "token missing", "two tokens", etc.
Such reasoning, modelling and testing should aim at assuring there are no visible deep theoretical problems in the specification and/or application implementation, and that the application logic is correct.
One of my pet dislikes is having too many priorities; "normal", "interrupt" and "panic" should be sufficient. Any more than that and reasoning/testing/modelling becomes much less tractable, and "random" problems appear in operation. If an RTOS application uses many priorities and those cause failures, it is not the fault of an RTOS - the same failures would probably be observed without an RTOS.