You don’t need to do any of this, it’s a simple Logic problem. All you need is effectively, a NOR gate.
Use a hit event to detect when the actor DOES collide with something. Allow that to switch the state of a bool, which changes the output of a Branch. The output of the Branch is true or false, and if you want it to be constant, you can fire event Tick through it.
What you’ll need to remember of course is that Overlap/Hit events generate once, when the event happens. You’ll need to use a delay to reset the branch and rely on the hit event to set it back again if you’re still colliding with something.
For a simple object, you can use a sphere trace of some kind and detect when that trace is touching anything, by comparing it’s radius to the radius you specify. Either way, these are things you’ll have to do every frame, and as such will impact performance relative to how many of these actors you have. It might be worth looking at how the C++ code checks to see if the character is flying, but it’s probably just a capsule trace that works in the same way.