самый логичный вариант, наверное, векторные тайлы + mapbox gl js. Самым простым способом подменять названия, возможно, будет залить данные с улицами в PostGIS, и там запросом, в конце которого ST_AsMVT, подменять названия по отдельной таблице. Возможно, пригодится pg_tileserv
Отлично работающая схема, но нужен postgis выше чем 2.4.5, иначе у 3д домов будут вывернуты полигоны в обратном порядке и их cullface сожрет