Mutators not existing on clients isn't the problem. The reason is that the mutator chain starts with Level.Game.BaseMutator. And as you may know, Level.Game is None on clients because the GameInfo is definitely serverside-only.
As a result there's no way to access the mutator chain (it's simply not maintained on clients, even if some mutators are replicated) and thus actors can't use it to call AlwaysKeep(), CheckReplacement(), etc.