Is your feature request related to a problem? Please describe.
Specifying secrets with stringData does not work well with server-side-apply. It's even stated in the official documentation:
The stringData field for a Secret does not work well with server-side apply.
Describe the solution you'd like
Maybe the controller should pre-process stringData and merge them (base64 encoded) into data before submitting to the K8s API.
Additional context
That could be a bit disruptive in the sense that some (previously incorrectly retained) keys would now finally be deleted from the persisted secret.