Beh ... mi sembra strano che ti restituisca NULL ...

Bisognerebbe fare un po' di debugging ...

Comunque, prova a visualizzare il valore di sizeof(vertice_grafo_t) poco prima della malloc.