Текст после тегов div отображается некорректно

Это полностью определённое, соответствующее стандартам поведение, описанное в спецификации CommonMark § 4.6 — HTML-блоки.

Ключевое правило — HTML-блок типа 6. В спецификации CommonMark тег div (наряду с p, blockquote, table, h1–h6, ul, ol, li, hr и др.) явно указан как блочный тег. Когда парсер встречает строку, начинающуюся с одного из этих тегов, он открывает HTML-блок с следующим условием завершения:

Условие завершения: за строкой следует пустая строка.

Ваши другие примеры относятся к строчным элементам и ведут себя иначе.