Bind functions to call to AActor instances i.e. to a button

You could create your own system using CallFunctionByNameWithArguments. This would basically allow you to build a push system where the button instances can be dynamically programmed to call an arbitrary function on some UObject somewhere, in your case maybe the touching actor.