Как вывести пользовательский текст без HTML-разметки
Название файла иногда содержит угловые скобки. При вставке через innerHTML браузер начинает разбирать его как разметку. Для обычной подписи нужен текстовый узел.
const label = document.querySelector(".filename");
label.textContent = file.name;
Это правило подходит для заголовков, сообщений и подписей, которым не нужен HTML. Оно не решает проверку адресов ссылок или содержимого style. Попробуйте имя с символами < и >: на странице должны появиться сами символы. Для разрешённой HTML-разметки потребуется отдельная очистка по списку допустимых элементов.