Hi Baron,
It was a rather long vacation, now I'm back 
I don't think you even have to add the data into the file where you maintain your pivottable(s). If you so wish, you could just add them in separate sheets, thus avoiding the limit of app. 1,000,000 rows.
If you use the pivottabelguide Alt +D +P (if you are running an english version), you can specify several areas of data, not necessarrily from the same file. That solves part of what would be a problem, bearing in mind you expect roughly 1,200,000 observations in a year.
The other part.. speeding up - well actually I don't think there's a whole lot to do. It just is an awful lot of data you want to read and summarize in one or more tables, but instead of having to refresh tabels manually, and to avoid the time-killing function 'refresh on open', you could write the simplest possible macro containing only a 'ActiveWorkbook.RefreshAll' command. That does it for me, I can then concentrate on something else, and get back to my pivottables once finalized. Otherwise, you would have to spend time and effort to put data in some sort of other 'container' be it access, olap-cubes or whatever.
best regards,
Jesper