Is there any way to limit the number of groups a user can create is so how can one achieve this?
Yes, GJ > Config > Groups > General > Limit.
Is there a way to only make available the group invite option to owner group and no to any other user that has joined the group?
Yes, GJ > Config > Groups > Defaults > Invite Access. Set to "Group Owner" and for it to "Hide". It will default to "Group Owner" and anyone, except CB Moderators, won't be able to change it on frontend.