С точки зрения русского языка оба варианта верны.
Запятые не нужны.
Действительно, фраза небезупречна. Лучше ее переформулировать.
Верно написание с одним Н.
Ошибки нет. См. пахнуть
Большой универсальный словарь русского языка
ПА́ХНУТЬ
1.0.2. безл. О наличии какого-л. запаха. Син. <разить разг.>.
Где-л. (напр., в комнате, в саду, на кухне …) или от кого-чего-л. (напр., от мальчика, от платья …) пахнет духами (розами, мятой, рыбой, бензином, чесноком, луком, краской, потом, газом, гарью, горелым, палёным, дымом, лекарствами, сыростью, плесенью, псиной, мышами …). Где-л. или от кого-чего-л. [не]хорошо ([не]приятно, плохо, дурно, скверно, ужасно, отвратительно, сильно, резко, слабо, немного, чуть-чуть разг., сладко, вкусно …).
См. вопрос 277818.
Запятая перед тире не нужна. Заметим, однако, что вместо тире лучше поставить двоеточие, так как последняя часть конструкции имеет значение причины, обоснования.
Слово вынуть приводят как пример единственного в русском языке слова без корня. Когда-то в этом слове корень был, но утратился вследствие исторических преобразований.
Обособление в данном случае не требуется.