почему мы должны кодировать специальные символы HTML, такие как €, ä в html
Вы не знаете, я не уверен, что заставляет вас думать, что вы должны. Это просто вариант, если вы предпочитаете писать в экранированном HTML-формате.
Обратите внимание, что вам do необходимо как-то указать кодировку самой вашей HTML-страницы, что вы и сделали с тегом <meta>
в своем примере. Это то, что определяет, что означают эти «расширенные» символы, в данном случае символы UTF8.