Part of being a good/successful wedding photographer is being able to take charge of a situation like this...or working around it...or avoiding it altogether.
I don't like the ideal of giving the client a 'no other photographer' rule either...but it may be a good idea to have that rule in your contract anyway...just in case to need to enforce it, or at least use the threat of it to help with jerks who don't get out of the way.
Having guest around, shooting behind you, can be a problem because the subjects may not know where to look and then your shots will suffer...but actually having someone step in front of you...I find than unacceptable. In a situation like this, I think it's important to let the bride (or your main contact) know that someone is ruining your photos...photos that they paid you to take. Sometimes, all it takes is a for the bride or someone to tell them to back off so that you can do your job.
Using a loud or commanding voice can be a photographer's best tool. Sometimes the photographer has to take charge and be very confident about it. It's like a class of boisterous high school kids, they will usually settle down much faster with a loud, confident teacher than they would for a timid, soft spoken teacher. It may be a fine line between seeming confident and seeming rude...but that's part of being good.
Another option might be to use a step ladder, so that you are above the crowd.
Another option is just not shoot in situations like this, tell the clients that you won't shoot where other cameras will be around. Some clients won't like this, but some will accept it and plan accordingly.
Remember, this is you reputation as a photographer on the line. If you shots have a bunch of people who are looking in all different directions and maybe even ruined because someone is getting in front of you...that will reflect badly on you.