Sort by Field in Connected Table

Hi Community,

This is for an app for sports fans.
I have an RG based on the thing UserMatches (list of matches my user has watched) that also contains Match level data coming from the Matches thing.
I want to allow the user to sort the RG using any of the columns with the arrow icon in this table header:

I have been able to get this to work by either sorting on fields within the UserMatches thing, or fields within the Matches thing (where the game info and all fan summary info) is stored. But for the life of me I cannot find a way to allow a sort on fields from either thing. I know I can do this by (redundantly) storing the match level data in each UserMatch record, but am trying to avoid having to do that.

Has anyone solved this?

Thanks in advance.