This half-solved my problem (on MacOS Big Sur with an up-to-date xQuartz installed). I still had to use the 4th argument of font(), so I have something like this now:
fixed := font(screen, roman, 12, 'mononoki-12:Regular'), \
tt := font(screen, roman, 12, 'mononoki-12:Regular'), \
boldtt := font(screen, bold, 12, 'mononoki-12:Bold'), \
and it looks as intended.