Essa questão é realmente muito complexa. Nunca cheguei a uma explicação que tenha me convencido... mas, já que estamos todos conjecturando, também eu o farei.
Melkor era uma criação de Ilúvatar. Talvez ele sentisse uma certa responsabilidade frente aos atos de Melkor. Eu considero que o mal seja um atributo inseparável da inteligência. Eru talvez desejasse que seus filhos tivessem contato com o mal para que pudessem rejeitá-lo. É melhor deixar eles terem contato com o mal e o rejeitarem do que simplesmente eliminar tal elemento da equação. Talvez o próprio Eru tivesse o mal dentro de si, e por causa disso Morgoth surgiu, mas Eru percebeu essa sua falha e a superou. Talvez ele quissesse o mesmo tipo de experiência para seus filhos.
Além de tudo isso, Eru poderia ter a esperança de que Melkor se arrependesse. Acredito que quanto maior o amor por uma criatura, mais estamos dispostos a esperar, a conceder tento para o arrependimento. Matar Melkor seria negar a ele a chance da redenção. Eru sabia que poderia conceder todo o tempo para Melkor, pois nenhuma de suas maldades seria realmente definitiva (é por isso que acho que mesmo os elfos transformados em orcs tinham uma alma). O mal seria uma forma da obra de Eru conhecer o verdadeiro valor da bondade, da beleza, etc, de tudo aquilo que associamos a esse conceito tão vago, o bem.
P.S. 1 : Nenhum universo interessante é feito de valores absolutos.
P.S. 2 : Em uma outra abordagem, não era Melkor dotado da "chama imperecível" ? Ele não poderia ser aniquilado de fato.