If you activate these options in Admin > Security Suite Settings, these should go a long way to solving your issue, if not solve it completely. Post back and let us know.
Filter User List
With this selected, non-admin users can only assign records to users who are in the same group(s)
Use Creator Group Select
Adds a panel to a record creation screen if a user is a member of more than one inheritable group that allows a user to select one or more groups (that the user belongs to) that should be associated with the newly created record. If a user is in just one group the normal inheritance rules will instead be applied.
The new record will still inherit from the Assigned To user or Parent record if these options are set. This setting only overrides the Created By setting.
Inherit from Created By User
The record will inherit all the groups assigned to the user who created it.
Inherit from Assigned To User
The record will inherit all the groups of the user assigned to the record.
Other groups assigned to the record will NOT be removed.
Inherit from Parent Record
E.g. If a case is created for a contact the case will inherit the groups associated with the contact.
Inbound email account
Locks down inbound email accounts in the email client to only list those that belong to the same group as the current user.
Default Groups for New Records
Set groups that should always be attached when a specific module record is created, e.g. you can set a group to be assigned to all newly created Account records.