The missing component and actor begin overlap events for objects in the persistent level has been fixed. When using Get Overlapping Components, the suggestion now is to either add a Delay node (with a 0.0 Duration) before checking for the overlapping components in BeginPlay, or to use the OnComponentBeginOverlap or OnActorBeginOverlap events which now function properly.
When we consolidated the ordering of BeginPlay and UpdateOverlaps in 4.24 this change to GetOverlappingComponents was an expected result of that. The setup you have here only previously worked for statically placed objects and never for dynamically placed objects (first case relied on UpdateOverlaps->BeginPlay, second case relied on BeginPlay->UpdateOverlaps). The order of OnActorBeginOverlap and OnComponentBeginOverlap also suffered the same inconsistency. There was inconsistency between static loading, level streaming, network spawning, and dynamic spawning, so we chose to consolidate it to the specific order we have now.
Get overlapping components/actors is not fully populated with initial overlaps by BeginPlay in 4.24, like they were in 4.23
In 4.23 each BP detected the other via get overlapping components.
In 4.24 neither BP detects the other.
Note that by setting bGenerateOverlapEventsDuringLevelStreaming for the BPs, the BPs loaded later will detect the ones that were loaded earlier, however their begin/end overlap events are not called, and there is still no good way of detecting these initial overlaps.
There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-86045 in the post.