Grazie per la risposta.
Per togliermi ogni dubbio, ho voluto fare una prova:
dal momento che in entrambe le app io utilizzo la classe FileProvider per leggere il path, sono sicuro del fatto che
RuntimePermissions.GetSafeDirDefaultExternal("")
in entrambi i casi restituisce un path che, tra le due app, differesce solo per il package name di ognuna. Quindi ho provato a fare un semplice replace, nel path restituito dalla prima app, con il package name della seconda app (quello da cui voglio leggere), e in questo modo dalla prima app riesco benissimo ad ottenere il file che si trova nella directory della seconda app.
Nel Manifest ho aggiunto questo:
CreateResource(xml,fileprovider_paths,
<paths>
<external-path name="name" path=""/>
</paths>)
In teoria non dovrebbe funzionare, ma se qualcuno sa spiegarmi il perchè...