Я думаю, что дополнительные методы, поскольку вы реализовали их, являются хорошим решением, но если вы настаиваете на использовании метода get_queryset, было бы хорошо переопределить метод и сохранить базовую функциональность. Я бы сделал что-то вроде этого:
...
def get_queryset(self, *a, **kw):
queryset = super().get_queryset(*a, **kw)
# filter your queryset here as you wish
queryset = queryset.filter(active=True, verified=True, admin=False, staff=False)
return queryset
...
Как я заметил из текста вопроса, вы попытались вызвать self.get_queryset (), который будет рекурсивным (не вызовом реализации суперкласса), который будетнаконец, ошибка максимальной глубины рекурсии превышена.
Надеюсь, это поможет