После еще одного исследования я (вроде) выяснил, что происходит. Firefox 3+ автоматически «optimizeLegibility» для любых шрифтов более 20 пикселей (посмотрите свойство CSS «text-render»).
По какой-то причине используемые мной шрифты некорректно отображаются, когда Firefox применяет это значение. Если я специально заявляю:
body { text-rendering: optimizeSpeed; }
Внезапно проблема исчезает. Очевидно, это может беспокоить кого-то, кому нравится эффект «optimizeLegibility» (это, безусловно, хороший эффект), но если вы не можете изменить шрифты и у вас появляется мусор в заголовках, я надеюсь, что это поможет.