The Agile 2 book goes into great depth on this issue. It turns out that excessive meetings are the result of an organizational culture that emphasizes face-to-face collaboration for every problem. It is largely a result of the Agile Manifesto's "the most effective communication is face-to-face". But in fact, information sharing is best done asynchronously.
As you point out, meetings are very powerful. They are best used to cross the finish line on important decisions. Sharing ideas is better done ahead of time. One-on-ones to talk through issues are better done before meeting as a group. Try to resolve things first without a meeting. Use meetings - which are golden moments that are extremely expensive - to get through the sticking points - to reach final consensus. And meetings can also be effective for going deep on an issue that has confounded everyone, but only after people have thought about it a lot on their own, and traded ideas ahead of time.
Most communication should be async. Meetings should be for the few sticking points.