The way CC and armor works sucks but I don't think RNG is the way to go about this.
I'm working on a mod and my solution is to make CC/statuses much more granular by making 8 versions of all those statuses of varying strength, and applying as an example a Chill of strength 4 to a Chill of strength 2 will result in the target having a Chill of strength 6. Only when reaching the 8th tier would the target actually be frozen, and the strength of statuses can be tweaked on a per-skill basis and increased via attributes or reduced/saved against via Willpower/Grit.
Doesn't rely on the armor system and gets rid of the binarity that system brought to the table, without reintroducing RNG.