You might want to acquaint yourself with the rules in play when multiple users are added to a device in this doc, under the Effects section. It should be evident that what you're trying to accomplish will be a "creative workaround", or simply impossible.
So what Android facilities exist for apps to share data that are not a filesystem? Well, the usual mechanism is a ContentProvider, but I suspect that two sandboxed instances of an app can not access each others' ContentProviders (and besides, how would you tell them apart?).
Let's assume that user-instance apps simply can't access each other. Maybe they could share some system level facilities that are accessible by all apps all the time regardless of who is the active user? The only thing that occurs to me as I write this is DropBoxManager. Unfortunately it's not reliably persistent as there are limits to how much it can store, and those limits could cause your data to get pushed out of the queue at any time before it can be read by the other app instance. Also, the data there is essentially public, which may not be what you want.
If you want to get crazy, you can revisit ContentProviders and somehow make use of the system level providers for calendar or contacts to stash data, as long as both apps know how to locate the secret special record. Wild stuff.
Another solution might be to store all your data on some server, and have each user enter some key to be able to location and read/write your blob of data on the server. If not a manual key, try to use some "unique" device property as the key. This is probably the best solution as you have more of a guarantee that something will not accidentally delete or expose your data.