Dynamic content-type creation
this could be done, but I think it's too broad for the Q&amp;A approach of Drupal Answers. In general, if I was to try this, I would start with this:


add an integer field to the user (to track number of content types)
using Field Permissions, hide that field from anyone but admin



  The Field Permissions module allows site administrators to set
  field-level permissions to edit, view and create fields on any entity.



create a role with the appropriate permissions to add content types
if permission allows viewing the content type list, use Rules to check that url against role to ensure new 'content type moderators' cannot access the list and redirect with a message



  The Rules module allows site administrators to define conditionally
  executed actions based on occurring events (known as reactive or ECA
  rules). It's a replacement with more features for the trigger module
  in core and the successor of the Drupal 5 workflow-ng module.



override the hook_form_alter() to check the integer value of the hidden field on content type creation, redirect or show message if user is at limit
override the form submit() function to increment the integer value of the hidden field on content type creation, and create perhaps a custom block, menu entry or other element to allow the user access to edit the content type later on