Let's see if I can address some of the questions here...
Although not explicitly asked, yes it's possible to create a UIA and then pay users based on their performance (obviously you would want to limit this to only paying for non-custom games to prevent cheating the system, for modes like ARAM a user could still be rewarded, but performance would need to be judged differently then simply objectives, KDA, etc so that's up for debate). Regardless, it's possible to do using the Riot API in the same way op.gg pulls stats on people. What would need to be established is what we're rewarding people based on, and how much (and how this varies between game modes / what games modes are supported).
Gifting RP however, is very limiting
https://support.riotgames.com/hc/en-us/articles/201752964-Gifting-Guide-and-FAQI'll highlight the important parts,
You can only send up to 10 gifts every 24 hours.
You can only receive up to 10 gifts every 24 hours.
The player receiving a gift needs to have been on your buddy list for at least one day.
The player receiving a gift cannot be banned or suspended (this includes Leaverbuster, Tribunal, etc.).
You can only send up to 5 RP gifts every 24 hours
You can only receive up to 5 RP gifts every 24 hours
There's no easy way around this without intentionally bypassing the system which Riot would crack down on. We would have to use a queue-based system which would possibly work early on, but doesn't have very good scalability.
Lastly, to address kuros question of how (user hosted) tournaments are done, first the organizer(s) submit an application to riot, once they've received approval they can begin accepting applicants for the tournament. At the end of the tournament they must submit to riot a bracket outline showing how all the matches proceeded as well as a history associated with each match played (typically bo1s, but this is up to the organizers). Riot is the one in the end to then hand out the prizes once they confirm that authenticity of what the tournament organizers submitted.