The 'edit own' permission should be all you need. Allow the user to create content of a specific node type. Put a gallery, description and any other fields on it.
A little more detail:
- Create a content type 'Pages'.
- Make sure users can create new pages and edit own pages.
- The user makes as much 'Pages' as he wishes.
- Put a gallery and any other fields on the content type.
If you want to use other content types instead of fields, use entity reference.