Generally speaking, as I may not understand everything you are trying to do, it may be easiest to just have a custom module watch the
\barrelstrength\sproutforms\elements\Entry::EVENT_BEFORE_SAVE Event and store the data as a JSON blob wherever you'd like.
If you don't wish to store the data in the normal way Sprout Forms lets you disable saving data to the database, or enable it and set the default to off so you only need to turn it on for use cases where you may want it to store the data in the plugin itself.
As far as retrieving that data, that would be up to you as you're storing it in a way that Sprout Forms wouldn't understand unless you retrieve and re-populate a Form Entry Model at some point in your workflow.
For a more integrated solution, you may want to explore Sprout Forms Custom Integrations API.
Integrations will run after a Form Entry is submitted and validated so you can use the Sprout Forms form builder to build and validate forms (and use features like conditional fields) and then, once the form is submitted you can hand things off to your Custom Integration and send the data wherever you'd like (to a third-party API or just somewhere else in the same database as you describe).
Some of the default integrations give examples on how you can build an Integration to handle custom mappings where you give the admin user an option to map the form fields they create to wherever you want to send the data to, however, Integrations don't require a mapping. If you just want to send the whole payload to a custom endpoint, you can do so and configure the endpoint of your other application to know what to expect.