I eventually learned to use a bit of Inkscape to make icons for my custom assets. I tested it with a incomplete amount of icons and ended up filling the void with the monochrome set which you can get from their github. As for fonts I found a few from FontSpace such as Pixel Power Line.
I made icons with a 300x300 and they seem to be the same size as the 256x256 icons, I’m guessing there’s some default icon scaling. I use a RPI4 so I made my own theme folder which you can do but your contents need to have a correct file name and placement.
If you download the ones from GitHub you get a better idea how to make your own after inspecting and observing how they work. I haven’t played with making my own sounds for my themes because the default sounds are pretty good and I at the time could not think of about what I wanted.
As for background images I use 1920x1080 and they work well too on my RPI4. Except for some that are jpeg. Lakka seems to not like jpeg images. There are color fonts but I have not got around to testing those.
Links: Fonts - https://www.fontspace.com/search?q=pixel
Retroarch Assets: https://github.com/libretro/retroarch-assets
Inkscape - https://inkscape.org/
I recommend checking out Inkscape - its part of the Free and Open source crowd. I made a few for anyone to use.