Ciao, per quanto riguarda la velocità, a meno che tu non abbia continui aggiornamenti potresti mettere i dati in un file js/array Json usarlo in modo statico. Questo verrebbe aggioranto lanciando uno script/url per rigenerarlo

Io avevo messo la lista località ad esempio in un file js incluso quindi in pagina con dentro semplicemente
codice:
localita = [{"nome":"Yacuiba (Bolivia)","urlArticolo":"\/previsioni-meteo\/bolivia\/estero\/yacuiba\/"},{"nome":"Yagoua (.....   ];
Per convertire da php a json ho visto che fai diversi controlli, a meno che non ti servano per forza basterebbe usare json_encode($tuo_array); di php

Per i dati che non tornano completi prova a cercare sul web