No, the static folder is not redundant.
Its purpose is to push static files upon build (all files that are inside) and can be used to serve non-Hugo-specific files.
As you noticed, assets are only taken upon build when they are referenced (called).
I don’t use assets folder at all but instead, I specified assets folder to be a content folder so I got images along the content.
assetDir = "content"
In your case, you probably need to put them into a static folder. Files served inside CSS are not dynamic. They are not reprocessed during build hence they are static.
You need to understand the purpose of both folders.
Use assets for the mages used in markdown and static for other parts, like website layout.