Разница между have to и should при выражении совета или рекомендации заключается в следующем:
Таким образом, should чаще используется для того, чтобы дать совет, в то время как have to может применяться для того, чтобы дать эмоциональный совет или убедить человека сделать что-то. 2
Выбор между этими глаголами зависит от конкретной ситуации и контекста.