Using the technique in the following doc, one could add multiple feature layers that point to the same layer:
One might do this to group or stack the same layer's data to show it in different contexts. Does Runtime cache the features and rendering artifacts so that there's not double of everything from that feature layer sitting in memory?
I don't think Runtime will allow it (at least not at 100.2, have not tried in 100.5). Although what I tried was different, we tried to add multiple layers from the same offline table.
If it is possible, there won't be any advantage from a rendering perspective, they will be seen as completely seperate
You are correct that currently you can only do one layer per table for _offline_ tables. However online tables doesn't have this limitation.
However consider each table will be making queries to fetch data, so make sure there's at least not overlap in the data being fetched, but you are going to see a lot more webrequests, which could hurt performance.
Generally I'd recommend one layer, and use the renderers and definition expressions to control different pieces of the data to show, rather than manage it with multiple players.