Если данные действительно хранятся в вашей базе данных как UTF-8, объявив эту кодировку (либо на странице с метатегом, либо в заголовке HTTP) должно быть достаточно.
Пока вы просто отображаете текст, не особенно важно, чтобы PHP "понимал", какие символы на самом деле есть, но браузер должен знать правильную кодировку, чтобы интерпретировать и правильно отображать страница. (Конечно, если вы начнете выполнять какую-либо обработку ваших строк в PHP, вам необходимо убедиться, что вы используете многобайтовые функции и также предоставили правильный набор символов).
utf8_decode
здесь вам не поможет, так как вы пытаетесь показать символы, которые не являются частью ISO 8859-1, набор символов, который функция декодирует в.