One of the main challenges when using row level security in extracts was that Tableau needed to flatten the table, which would in turn make the extract really big, especially when using a complex hierarchy. So your instincts are correct! Because of this, the functionality to store extracts in multiple tables was released in Tableau 2018.3, therefore avoiding the need to flatten the table and 'explode' the extract: You can now choose multiple table storage for extracts | Tableau Software. I'd suggest you give it a try before switching to a whole new way of managing security in stored procedures.
Bryant talks in depth about the best practices for row level security in this blog post: https://tableauandbehold.com/row-level-security/ . This is a great read before any row level security projects!
Hope this helps!