Страница без doctype будет отображаться в режиме Quirks, тогда как страница с doctype будет отображаться в режиме Standards (хорошо, если предположить, что сам doctype правильный, и ничто иное на странице не вызывает режим Quirks).
Мне кажется, что добавление doctype переводит страницу в режим Standards (что правильно), но рендеринг отличается от того, что вы ожидаете, потому что вы изначально создали его без doctype.
С точки зрения исправления конкретных проблем - это сложнее сделать, не увидев живой пример, но я бы позаботился о том, чтобы у вас были единицы измерения для всех размеров шрифта, нигде не было опечаток и т. Д. (Вы можете запустить CSS через валидатор W3C, чтобы перепроверить).
С вашими "встроенными" шрифтами вы говорите о веб-шрифтах? Если нет, шрифт не появится, если он не установлен локально.
Надеюсь, это поможет! В будущем обязательно включите doctype, когда начнете кодировать, так как это уменьшит многие из этих проблем.