Che io sappia, la fonte più aggiornata è quella fornita da ISTAT, che permette di scaricare questi dati da questa pagina.

Per poter utilizzare i dati, ovviamente è necessario importarli all'interno di un proprio storage, ma a parte questo non vedo altri ostacoli.

L'alternativa credo sia quella di interfacciarsi a un sistema più aperto, ad esempio le API di Google Maps, gestendo l'indirizzo con una modalità più "slegata" (es. consentendo una ricerca libera nell'interfaccia) e archiviando poi le parti dell'indirizzo una volta confermata la scelta dell'utente.