Правилен первый вариант. Название города Хива освоено и поэтому в сочетании со словом город склоняется. Ср.: Так наконец мы проникли настолько внутрь города Хивы, что оказались в самой Хиве, той, что является ее красой и славой, той, что является Хивой для всех нехивинцев… (А. Битов. Обоснованная ревность); Устроив Ханом в комнате, Чагатаев ушел наружу и до вечера ходил по городу Хиве... (А. Платонов. Джан).
В город Москву.
Сначала о склонении без родового слова город. Согласно словарям русского языка (см., напр.: Русский орфографический словарь РАН / Под ред. В. В. Лопатина, О. Е. Ивановой. – 4-е изд., испр. и доп. – М., 2012; Агеенко Ф. Л. Словарь собственных имен русского языка. М., 2010), склоняются обе части этого названия: Усолье-Сибирское, Усолья-Сибирского.
При употреблении в сочетании со словом город нет причин не склонять это название. Несовпадение рода обобщающего нарицательного слова и географического названия не влияет на склоняемость топонимов в сочетании со словом город. Восстановить исходную форму при склонении достаточно легко. Следовательно, нужно склонять: из города Усолья-Сибирского, в городе Усолье-Сибирском.
Запятая не требуется.
Склонение (точнее, согласование) корректно.