This reservation is not for protection against corruption or the like
It depends on how do you "see" a corruption. A "software guy" will see it just as an unexpected software malfunction which changed content of some memory location(s) (due to a bug in software)
However, a "hardware + software guy" will have somewhat different approach. First, he will check "pure" hardware possible reasons (like instability in power lines, validity of all voltages, noises in signal lines (lets say for PSRAM) etc. Once he is sure that everything is fine, he will continue searching a reason of corruption by asking, what parts of internal hardware design can access directly (or indirectly lets say via DMA for example) to some memory location(s). Can, lets say, an UART module or any other hardware module access to some location (without any software execution, just by hardware design). For example, if some hardware module is designed to use specific fixed range (or configurable range) of addresses in RAM (for buffers or what ever), once such module is "turned ON" that range is certainly not a good place for keeping any variables. Because, any potential misconfiguration (or incidental activation) of such a hardware module could affect content on those location(s). Also, potential bug(s) in internal hardware design, affecting such module could lead affecting data in that range. When on that already large list you add RTOS and all installed drivers to support different modules (which btw can also be potentially buggy) ... you see what I mean?
In that sense, ranges of addresses not accessible to, lets say, any hardware module, DMA etc. are somewhat safer place for global variables. In multi core designs, any improper lock or race conditions could also affect the content in the cache (which will be soon or later) reflected in a RAM. So ideal place for storing sensitive variables would be also place accessible by single core only.
That's why RTC_FAST_RAM is almost ideal for that. It can not be accessed by DMA or second APP CPU (only PRO CPU and ULP can access it).
Off course, it doesn't mean that a potentially buggy code can not store garbage in it. It only means that a potentially misconfigured module, DMA etc wont be able to "write" over your global variables.