The idea of separating user mode from kernel mode is so whatever runs in user mode can't interfere with the rest of the system hence the requirement for lesser privileges. For example, you wouldn't want a user mode application being able to write to another process or the kernel.
The protection is done via hardware. Often, processors have privilege modes, an MMU and access control options. In x86, you have the privilege rings; in ARM, you have user mode vs supervisor mode.