Just a thought: IMHO I think you are asking a bit too much of PowerApps in its present state.
For example, currently PowerApps cannot really interact with images saved in SharePoint lists except via a work-around that is not 100% reliable on all platforms. However, that is being actively worked on by the PowerApps team and may work soon.
Also, as far as I am aware, currently external users cannot use your domain's PowerApps, they must be given a Microsoft login to your domain.
Anyway, I hope someone answers your call and can be more helpful than I.
Sure I can deliver what you are looking for. We have expertise in Power apps development and have IN house team to develop it. We have already developed 2 Power apps and working on 3rd project at the moment, so you can rely us on this.
We can have quick discussion over call/email whichever mode of communication you prefer.