До орфографической реформы 1917–1918 годов слово могло, по давно установившейся традиции, оканчиваться или гласной буквой, или твердым знаком (он назывался «ер»), или мягким знаком (он назывался «ерь»). Много столетий назад буквы «ер» и «ерь» тоже обозначали особые (очень короткие) гласные звуки, но эти звуки давно исчезли из нашего языка.
Происхождение традиции писать «ер» и «ерь» на конце слов можно объяснить следующим образом. При письме без пробелов между словами «ер» и «ерь» показывали границу слова, т. е., даже перестав обозначать гласные звуки, эти буквы выполняли очень важную функцию — указывать на конец слова. Привычка видеть эти буквы в конце слова оказалась так сильна, что они остались и после того, как стало обычным разделять слова пробелами.
Осколок этой традиции сохранился и в современном русском языке — в виде написания ь на конце слов после шипящих: мышь, ночь, рожь, стричь. Никаких разумных причин писать ь в этой позиции нет, такое написание просто дань традиции (его тоже предполагали отменить реформой 1917–1918 годов и оставили в самый последний момент).
Если название города на протяжении нескольких десятилетий свободно склонялось, значит этот топоним можно смело отнести к числу названий, «давно заимствованных и освоенных русским языком», и, следовательно, склонять. Вы правы: рекомендация не склонять иноязычные названия на согласный касается (за редким исключением) иностранных топонимов. Варианты на реке Белая, на улице Советская тоже нельзя считать нормой литературного языка, это, скорее, типично канцелярское употребление.
Если помнит тоже относится к городу, фразу надо править. Корректно: Сказал, что помнит город своего детства и скучает по нему.
Правильно: гостиница в городе Воронеже. Подробнее см. в "Письмовнике".
Сочетание согласных шн на конце слова чуждо русской фонетической системе. По мере освоения русским языком слов с таким сочетанием их звуковой состав меняется: между согласными появляется гласный звук, причем сначала это может происходить при склонении слова, например: от ресепшена, к ресепшену. Сравните с краткими формами прилагательных, в которых финальное сочетание шн так же разбивается гласным, например: грешен, хотя грешный, грешна; великодушен, хотя великодушный, великодушна. (См. также словарную статю слова ресепшен ресурса «Орфографическое комментирование русского словаря»). Конечное сочетание именительного падежа вр в косвенных падежах не разбивается гласным звуком (у шедавра, мавра, кентавра, динозавра), русская фонетика приняла такое сочетание.
Правильно: в городе Ростове.
Верны оба варианта. Первый предпочтителен, поскольку при склонении (в городе Балабанове) приходится восстанавливать начальную форму: Балабаново или Балабанов?
Верно: в городе Санкт-Петербурге.
Верно: города Тирасполя.
Иноязычные географические названия склоняются в сочетании со словом город, если они хорошо известны, если они освоены русским языком (в городе Нью-Йорке, из города Мадрида). Малоизвестные географические названия остаются без изменений. Название Эльблонг не так известно носителям русского языка, поэтому корректно: в городе Эльблонг. Впрочем, если это сочетание встречается, например, в газете, выходящей в Калининградской области (жителям которой название города наверняка хорошо известно), можно написать и в городе Эльблонге.