Precisa na hora de chamar a função atualizaElemento, passar além do parametro itemAtual, também o existe, para a função conhecer tanto o objeto do item que estamos adicionando, como o que já estava adicionado. Aí dentro da função para fazer a soma, precisa converter o item.quantidade e existe.quantidade para int e somar. Também alterei o if(existe) para atualizar o localstorage.
Abaixo está a forma como eu fiz:
if(existe){
itemAtual.id = existe.id
atualizaElemento(itemAtual, existe)
itens[itens.findIndex(elemento => elemento.id === existe.id)] = itemAtual
itens[itemAtual.id].quantidade = parseInt(itemAtual.quantidade) + parseInt(existe.quantidade)
} else{
itemAtual.id = itens[itens.length -1] ? (itens[itens.length -1]).id + 1 : 0
criaElemento(itemAtual)
itens.push(itemAtual)
}
function atualizaElemento(item, existe){
document.querySelector("[data-id='"+item.id+"']").innerHTML = parseInt(item.quantidade) + parseInt(existe.quantidade)
}