So here's what's happening with a relatively high traffic site. It seems that every time someone goes to a page with the Twitter button, it generates an API call to bitly to get the URL, even if that page has already made an API call. So, once enough requests build up, it doesn't work at all... and instead I get this in the URL for the Tweet button:
There should be a better way to manage this. Instead of making an API call every time the page is loaded, why not store the url (custom, if applicable) as a custom field for this post, and then just pull that from the local database? It's faster, doesn't need to wait for the API call, and decreases the number of trips to the bitly API server to get what it needs.
So for now, I either need to disable bitly, or find a better way of doing this.