Ive recently upgraded a client site from 1.7 and there are 400+ pages that are split into multiple stores/languages.
Is it possible to create a role and user for each store and only show the CMS pages related to the particular store view?
The answer is "no" with Magento out-of-the-box. The users are admin roles are managed by Magento instance and not by store.
You should implement a custom module to support that feature in your Magento store.