Как уменьшить количество запросов к базе данных?
Сами ответили на свой вопрос. Используйте Кеш. Гуглите, ибо информации море, как и подходов. Если у Вас не Plain Python ( а судя по вопросу нет) то вы сможете что-то найти для вашего фреймворка готовое.
Ajax плохо для SEO. Если хочешь сделать популярный сайт, который заметят поисковики, то никаких Ajax!!! Кеш отличный вариант. Можно и самому написать, если не хочется копаться в готовых решениях. Взять к примеру Redis и складывать туда информацию (готовые куски отрендеренных шаблонов). При загрузке страницы брать инфу из Redis, если ее там нет или она "протухла" то брать из базы и параллельно обновлять в Redis.