I’m sure I’m oversimplifying, but I notice in your about.json snippet, the path to the fonts points to an assets folder, but in your css, the path points to a fonts folder. Are you sure the css source path is correct?
I played with this a bit on a fairly new Discourse instance, and had some trouble with the first few fonts I tried. I had converted them to .woff2 using a free, online converter, and I think maybe it didn’t do a good job.
When I tried with an .otf font and again with another .woff2 font converted by a more reputable converter, I was able to add the custom font using the steps in guide @pfaffman and @awesomerobot linked.