Для главной страницы я бы все же взял что-то типа View, ListView хорош, если тебе нужно получить только 1 кверисет, а у тебя их гора. Ну и если ты посмотришь как работает класс Paginator, то увидишь что он принимает кверисет, а не класс. А работает пагинация только благодаря context = super(BlogArticlesMainPage, self).get_context_data(**kwargs), который выполнил код родительского класса