From your description I think the main problem you have is that you're (or should I say the consultant) trying to use the media sets to control which tapes are used by which jobs, however that's not how media sets work.
Media sets are used to control the overwrite and append periods of the tapes only, so for instance your weekly backups would have a fairly short overwrite protection period, say a few days long, where as your monthly backups would have a longer period, close to a month long, or perhaps a year depend on the rotation being used.
When the backup job runs Backup Exec selects a tape from your library based on 1) which tapes are currently available to be overwritten, and 2) of those, which ever tape is the oldest in terms of time since last being used. The media set the tapes are in currently is ignored, and once the job begins the tape is then put into the media set relevant to that job. The only exception is with append jobs, where once a tape has been used initially by one media set type job, only jobs in the same media set can append data to it until such time as the protection period expire.
If you want to control which tapes are used by which backup jobs, your best bet is to parition your tape library, and then point the different backup jobs to the specific partitions.