Il problema principale e' che non hai una tabella completa con cui aggiornare una tabella mancante di alcuni valori, ma che vuoi aggiornare una o l'altra a seconda di dove si trova il valore.
Giocoforza usare la IF ed fare una query di una certa complessita'...
del tipo..
codice:
UPDATE tab1 a, tab2 b SET
a.telefono = if(a.telefono = '', b.telefono, a.telefono),
b.telefono = if(b.telefono = '', a.telefono, b.telefono),
a.codice_fiscale = if(a.codice_fiscale = '', b.codice_fiscale, a.codice_fiscale),
b.codice_fiscale = if(b.codice_fiscale = '', a.codice_fiscale, b.codice_fiscale)
where a.nome = b.nome;
Query da provare, ovviamente, con cautela se i dati sono reali.