not that I know of, but I don't really use crosstabs.
That is also the nature of the beast of cross tabs, the number of columns is unknown at design time. The only way that I can think of limiting the size is to limit range of data being returned, which may not be possible depending on how you retrieve your data.
For example, say it is a report that shows the counts of something daily, and you have only designed the report to handle 1 month of data, but your parameters are start and stop dates...a user could put in 3 months. CR would handle it but the report would look like you wanted.
You could use a stored proc, or the record filtering and limit it to 1 month by using the start date or the end date, and inform the user with a message (dynamically suppressed if all is ok).
Again, I'm not sure if there is a way, but the easiest way is to limit the data so taht you don't span multiple pages and your footer will appear on every page.