This is an interesting idea that has been implemented in the past by a few developers, and I even wrote a prototype of this once in Unity. The overall idea goes something like this:
The game and mobile phone app are two separate applications that communicate via a socket connection. The Unreal game acts as the socket server that the smartphone can connect to, and pressing “buttons” on the smartphone app raises events in Unreal that control the player. Currently, there is not blueprint node for creating a socket connection, but there have been some articles posted on this topic using c++.
It’s a pretty simple concept, and socket connections are nothing new. There is a wealth of information online to help you make sense of them. The only real hurdle is using something like Bonjour to handle service discovery to find the IP address of the PC running the Unreal game, but it’s absolutely possible.
Hope this helps.