Looks like with the Plasma 6.2 update things got way better.
Every here and there is still some little English, between my otherwise set to German things, but overall a big improvement.
I think in your case some German translations may be simply missing (not translated to begin with), while in my case it seems that it spews English when $LC_* is changed. The only env var that should affect translations should be $LANGUAGE or $LANG (if you need full language code). Translations shouldn’t depend on $LC_*, only specific stuff like date/time formatting.
On another note, why not let people just set an arbitrary date, currency and number format strings?