Support for font-variation-settings has been on by default since Firefox 62, which was released almost two years ago. Are you using a Firefox older than that?
There's a great series of posts going into more detail about Pernosco's design and advantages that is linked to in the final paragraph: https://pernos.co/about/
There are minor benefits without ABP. For each page/iframe that is created, we can avoid running the CSS cascade (and share those data structures) for the UA style sheets. It's saves something like 100 KiB per document.
If other add-ons insert a common style sheet into all documents (it's plausible Stylish does something like this? though I've never checked) then we'll again be able to avoid running the cascade and having duplicate data structures for the cascade across different documents.
Interesting that Firefox takes the decomposed Hangul and renders it as whole syllables, while Chrome shows them as the sequence of individual jamos. http://mcc.id.au/temp/hangul.png
I just did some poking around, and it looks like uBlock does insert a couple of <style> elements into the document. I'm not sure if this is how all style-based blocking is done in uBlock, but since these are document-level style sheets, they are not shared like user agent-level sheets are. (We will in the future be investigating whether we can share more data between common document-level style sheets across multiple documents, though.)
I can't see where on that page it talks about using style sheets. Last week I searched the µBlock sources for use of the nsIStyleSheetService, which is Gecko's internal interface for adding style sheets without manipulating individual documents, and the only use of that interface is for adding css/legacy-toolbar-button.css, which I assume is for some UI.
µBlock does not use the same technique of creating a style sheet and inserting it into all loaded documents, so the type of sharing done as part of this work does not help µBlock.
As pornel pointed out, CSS Variables are really custom properties that cascade and inherit just like regular properties. Since "$" is used by CSS preprocessors for variables that work in a different way, I think Tab felt that it would cause too much confusion to use the same symbol. The set of remaining ASCII non-alphabetic characters that CSS doesn't use is pretty small too; perhaps "$" is slated for use by some other feature.
There's also a desire in the WG to have a consistent naming scheme for custom CSS things, including custom media queries, custom pseudo-classes to use in selectors, etc. "--" is something that doesn't scream "variables" and so would be usable for those other things.