Как по-разному отображать публичный и премиум-контент в Discourse?

Да, просто поместите премиум-контент в защищённые категории.

Например, вы можете использовать плагин «Подписки», чтобы добавлять пользователей в премиум-группы и разрешать только этим группам просматривать указанные категории.

Что касается внешнего вида, многие компоненты тем позволяют настраивать их отображение в зависимости от категории, а также создавать собственные элементы на свой вкус.