Quando passa o filtro de livros front-end, back-end e dados, o desconto dos livros é perdido. Uma sólução básica é passar a função aplicarDencontos() no final da função filtrarLivros()
function filtrarLivros(){
const elementoBtn = document.getElementById(this.id)
const categoria = elementoBtn.value
let livrosFiltrados = livros.filter(livro => livro.categoria == categoria)
exibirOsLivrosNaTela(aplicarDesconto(livrosFiltrados))
}