Я не думаю, что это возможно сделать с Criteria api, так как Hibernate Criteria не поддерживает предложение HAVING.Для этого существует открытая проблема JIRA , вы можете попробовать отправленные там патчи.
Альтернативой может быть использование HQL:
def results = Game.findAll("from Game where id in (select g.id from Game g join g.users u group by g.id, g.maxUsers having count(u) < g.maxUsers)")