A couple of points:
this
plugin: CSSfromfonts creates all the CSS to define the fonts in the files you have imported.
As for diagrams, for chess diagrams I'd use GIFs which are perfectly sharp. PNG is better, but is not supported in Kindle, (PNG gets converted to GIF or JPEG and made larger and blurrier in the process), so I just use GIF for diagrams, maps, etc.
After making a diagram in whatever you use, I use Irfanview to covert to GIF and reduce the colour depth. For most b/w linework 4 bits is sharp but has a couple of greys to antialias curves. Two bits has jaggies. It's roughly 1/5th the size of a 256 colour image.
Irfanview can be batched to convert a folder of images to GIF at 4 bits.