Ответ 1
В вашем первом примере reversed
применяется ко всему компаратору, который сравнивает seq1, затем seq2 в порядке возрастания.
Вам нужно только отменить второе сравнение, которое можно сделать, например, с помощью
import static java.util.Collections.reverseOrder;
import static java.util.Comparator.comparing;
list = list.stream().sorted(
comparing(AClass::getSeq1)
.thenComparing(reverseOrder(comparing(AClass::getSeq2))))
.collect(toList());
//or you could also write:
list = list.stream().sorted(
comparing(AClass::getSeq1)
.thenComparing(comparing(AClass::getSeq2).reversed()))
.collect(toList());