How does a large ISP charge a smaller ISP for peering? Is it based on bandwidth or simply a flat fee? If it's based on bandwidth, what do they use to keep track of specifics? And if it's flat, how do they monitor/prevent abuse?
There's no single answer.
Many use the term "peering" to mean that two ISPs have agreed to exchange traffic free-of-charge. These types of peering relationships are most common when the ISPs are at the same tier--for example, between two Tier 1 ISPs or two Tier 2 ISPs. To make it more complex, many peering agreements have clauses that induce pentalties if one of the peers is carrying more traffic than the other peer, to help ensure peering relationships are not abused.
Most of the time, if a smaller ISP "peers" with a larger ISP, the agreement is termed a "transit" connection. This type of connection is common for Tier 3 ISPS who connect to a Tier 1 ISP. The Tier 3 ISP probably doesn't have a coast-to-coast backbone or Tier 1 peering relationships that are necessary to deliver Internet traffic to anywhere in the world. As a result, the Tier 3 ISP needs a Tier 1 to take responsibility for deliverying traffic, wherever it may be addressed.
Tier 3 ISPs pay for transit connections with a variety of different fee structures. Generally, there will be a flat fee combined with a usage-based fee if usage exceeds a pre-determined level. The usage-based portion of the fee can be based on total data transferred per month or peak data transferred over a small time window such as 15 minutes. However, there is no universal structure for these fees. An individual Tier 1 ISP probably offers a similar fee structure for all transit connections, but the structure may differ from other Tier 1 ISPs.
Sorry I can't give a simpler answer.