RemoveAll from TArray with GameplayTag

It’s untested, but

outOverlappingActors->RemoveAll([itemTag](AActor *RemovalCandidate) {
    ABaseGameplayTagActor *TagActor = Cast<ABaseGameplayTagActor>(RemovalCandidate);

    return TagActor->HasMatchingGameplayTag(itemTag);
});

should do it.