He encontrado la solución aquí . La solución es usar consulta JPQL en lugar de consulta SQL.
Repositorio refactorizado:
@Repository
public interface BoardCardRepository extends JpaRepository<BoardCard, Long>, QueryDslPredicateExecutor<BoardCard> {
@Query(value = "SELECT id.card.id FROM BoardCard WHERE id.board.id = :boardId AND onHold = true")
List<Long> getExcludedCardIds(@Param("boardId") Long boardId);
}