В таких случаях не нужно слишком много думать о производительности (если это не огромные цифры), вы должны писать как можно более понятный и понятный код. Позже вы можете настроить его, но сначала убедитесь, что он логически корректен и вам действительно нужно улучшение производительности.
Также вам не нужно реализовывать сортировку, используйте существующие утилиты.
Я бы сделал этокак это:
List<GameEntry> arr = new ArrayList<>();
Comparator<GameEntry> cmp = Comparator.comparingInt(a -> a.getScore());
public void add(GameEntry e) {
arr.add(e);
Collections.sort(arr, cmp.reversed());
while(arr.size() > capacity) {
arr.remove(arr.size()-1);
}
}