Оберните имя города в span, чтобы было так:
<div id="city">
<img src="img/flag-m.png" />
<span>Москва</span>
</div>
Сама подстановка значений:
document.querySelector('ul').addEventListener('click', e => {
const li = e.target.closest('li');
if (li) {
document.querySelector('#city img').src = li.dataset.gerb;
document.querySelector('#city span').textContent = li.dataset.city;
}
});
// или
document.querySelectorAll('li').forEach(n => {
n.addEventListener('click', onClick);
});
function onClick({ target: { dataset: { city, gerb } } }) {
document.querySelector('#city img').src = gerb;
document.querySelector('#city span').textContent = city;
}