No UPROPERTY Raw Pointer's IsValid() Access Violation

you could try clearing all timers by calling

	GetWorld()->GetTimerManager().ClearAllTimersForObject(this);

during an override of

AActor::OnLoadedActorRemovedFromLevel(){
 // clear timer here
}

or if it’s a normal level then you could reset it during BeginDestroy()