«Morrer de fome»1 (ou «morrer à fome») é uma expressão que inclui uma locução adverbial1 – «de fome» –, isto é, uma sequência de valor adverbial que está dicionarizada com o sentido de «alimentar-se muito mal; não possuir nada do que é essencial à vida» (Academia das Ciências de Lisboa, Dicionário do Português Contemporâneo).
Já «morrer com fome» inclui um grupo preposicional – «com fome» –, isto é, um «grupo de palavras cujo constituinte principal é uma preposição [com] e que funciona como uma unidade sintática» (Dicionário Terminológico), surgindo como alternativa à expressão «morrer de fome».
Contudo, é de notar que as duas expressões podem ter leituras diferentes:
1. « O João morreu de fome»;
2. «O João morreu com fome».
Em 1, pode assumir-se que a causa da morte do João foi a falta de alimentos. Já em 2, não obstante a leitura de a causa da morte ter sido a falta de alimentos, pode também dar-se outra interpretação: quando o João morreu, de uma causa não explícita, sabia-se que ele tinha fome. O contexto é, pois, importante para se entender o que significa «com fome», dada a ambiguidade desta expressão.
N.E. — Resposta alterada em 20/12/2021
Cf. Você sabia que a preposição "de" tem 20 sentidos diferentes?