Это не имеет ничего общего ни с CakePHP, ни сессиями. Действительно, проблема возникает на всех языках веб-программирования.
Решение состоит в том, чтобы сделать страницу результатов поиска кэшируемой - я полагаю, что вы не обновляете свой каталог каждые 5 минут?
Чтобы сделать его кэшируемым, необходимо убедиться, что поисковые термины отправляются с использованием GET, а не POST, а затем установить правильные заголовки, чтобы браузер мог кэшировать страницу, например,
header('Cache-Control: max-age=360'); // allows browser to keep for 1 hour
.... и если вы используете сеансы, которые могут ограничить видимость определенных продуктов в поиске:
header('Varies: Cookie');
С