Just as an update, i removed the query on form load and created a button to query the data with the original data connection, it reduced the query time to around 1 minutes and 15ish seconds, which feels like forever, waiting for it while you cant do anything till its done but it did stop the form giving an error/crashing on load.
I feel like it will just get longer and longer for it to query over time. Does anyone have any suggestions that might help the speed at all? Would creating a blank view with no fields and just the button to query help at all? then have it switch views or is the query tied to views and that wouldn't matter?