Сессия существует до закрытия браузера. Тут всё понятно
Нет, сессия может существовать пока существует кука у пользователя (до закрытия браузера или до определенной даты, хоть через тыщу лет) и пока не истечет таймер на сервере. А таймер на сервере можно установить на 0, и не очищать сесси
никогда.
Хеш сессии можно сохранить в БД ... но зачем?
Чтобы использовать одну сессию для нескольких серверов, например. Только наверное не хеш сессии а SESSIONID и собственно само содержимое сессии. Может еще "срок годности".
Ну и вообще что хранить в cookie если каких-то индивидуальных настроек сайта типа цвета, стартового раздела у меня нет и вообще имеют ли они смысл?
А никто вас и не заставляет использовать сессии и куки. Если нет авторизации, нет никаких пользовательских настроек, и нечего хранить в сессии - даже не вызывайте session_start().