Instagram should be running in a sandbox that gets truth only if the user actually wishes to give it the truth, and if they want to demand unnecessary info from the user (e.g. access to data about other installed apps), then the app should be either lied to by the OS or banned by the platform provider.
There's an inherent conflict between the needs of the app developers and users. The device manufacturers have to take a side in that conflict, presumably the side of the user who's paying them for the device.
The problem with it is that at least one of the big the platform providers is in a conflict of interest, given how they engage in the exact same practices as a business model. Google cannot hit at anyone for any practice they also use without shooting themselves in the foot. So the status quo is maintained with everyone being allowed to take a swing at vacuuming as much personal user data as humanly possible without ever informing the user or getting proper (informed) consent.
On Android, if you install Xposed, there's XPrivacy [0], which essentially had this premise. Unfortunately, it only supports versions 4.0.3-5.1.1 (and is no longer maintained).
I haven't been following the rooting community for a while, so someone can probably correct me if there's a better alternative now, but I believe the replacement is XPrivacyLua [1].
[0] https://github.com/M66B/XPrivacy
[1] https://www.xda-developers.com/xprivacylua-xposed-module-pri...