El código tal como se publicó de hecho funciona correctamente; el problema que tuve fue otra cosa.
Hice algo como esto:
Aggregation agg = newAggregation(
project("comments"), //This was the problem! Without this it works as desired!
unwind("comments"),
sort(Direction.DESC, "comments.createdAt")
);
Como escribí en el código, quería proyectar solo los comentarios -Field para ahorrar algunos gastos generales, ¡pero esto realmente causó mi problema!
¡Muchas gracias por la pista!