Yes, there is another option - you basically create the flow from within Power Apps - this then becomes a power-apps-triggered flow, which will run in and use the context of the user account for all actions
In your case, If I were to set this up I would create the flow within Power Apps, having it do the same actions that your current flow does (ensuring to delete or turn off your existing flow so that changes and emails are not done twice ), then have it use the ID field from your Form,
So the action to run the flow would happen on a Form's OnSuccess, with it being something like:
FlowName.run(FormName.LastSubmit.ID)
Then in your flow you can reference the item by using the 'ask in Power Apps' action
If you are unfamiliar with this I would suggest playing around a bit with it first, as for example it will name that input based on the name of the Power Automate action that you are calling it from, so make sure to rename your Power Automate actions to something useful!
More info can be found here:
Link