It sounds like you might be experiencing your company's first growth pains. Am I right in guessing that your company grew quite recently from very small to it's current size?
A weekly meeting with everyone in the company sounds like it's an excellent idea when the company is four or five people. Everybody keeps in touch, they get to know what each other are doing, you feel connected, it's great - team building and useful communication in one!
However as your company gets bigger, the value of this meeting declines. The more people there are the less people get to talk, so the less they feel connected. And more of the meeting starts to become irrelevant to more of the people, like when the marketing guys start discussing their strategy for the upcoming launch. The developers start to shuffle their feet and think about that algorithm they are working on.
So the point is, break the meeting up. Maybe have the team leads (or heads of department) meet once a week, and have each of them meet with their teams afterward, to pass on any company-wide information. You can do company-wide meetings less frequently, when you've got something special to say and make sure there's food so nobody feels like its wasted time. Don't worry - it's part of growth and change. Joel wrote a whole article about it recently, about how they've suddenly realised that Fog Creek needs middle managers.
Who knows, if you keep growing, maybe you'll eventually need two layers of management.