A way to override or bind OnMoveCompleted inside pawn class?

If still relevant it is possible to override AIController->OnMoveCompleted() as it is a public virtual function.

So create your own child the from the AIController class then create following:

.h (public)
virtual void OnMoveCompleted(FAIRequestID RequestID, const FPathFollowingResult& Result) override;

.cpp
void AYourAIController::OnMoveCompleted(FAIRequestID RequestID, const FPathFollowingResult& Result)
{
UE_LOG(LogTemp, Warning, TEXT(“OnMoveCompleted_Override”));
}