How about undoing or disabling whatever was added in the most recent KDE? Because in OpenSUSE 15.4 which uses KDE 5.24.4, it didn’t happen.
I noticed that in KDE 5.24.4, I had this in my plasma rc file, and it persists in this format even after I manually move icons around:
[Containments][1][General]
ToolBoxButtonState=topcenter
ToolBoxButtonX=728
iconSize=1
labelWidth=0
positions=6,28,desktop:/Emacs,4,0,desktop:/XEmacs,4,1,desktop:/Amber Konsole,4,2,desktop:/Firefox 24ESR,2,0,desktop:/Konsole Green,4,3,desktop:/Firefox 52ESR,2,1,desktop:/Firefox 68ESR,2,2,desktop:/Firefox 91ESR,2,3,desktop:/Firefox,3,4,desktop:/Firefox 45ESR,3,0,desktop:/Firefox 60ESR,3,1,desktop:/Eclipse,1,0,desktop:/Firefox 78ESR,3,2,desktop:/Firefox 102ESR,3,3,desktop:/kinfocenter.desktop,5,0,desktop:/IntelliJ,1,1,desktop:/Support.desktop,5,1,desktop:/VScode.desktop,1,2,desktop:/SuSE.desktop,5,2,desktop:/OpenVPN,1,3,desktop:/XTerm,4,4,desktop:/Office Free,5,3,desktop:/Google Chrome,4,5,desktop:/Firefox 115ESR,2,4
sortMode=-1
Note how the positions are specified independently of any screen resolution. However, in KDE 5.27.4, if I apply this same syntax for “positions”, it gets converted into resolution-specific JSON, and then every time I resize the window it ignores the existing resolution-specific settings (for other resolutions) and creates a new one. This seems like a regression.