Perhaps block chain should accept only hashes of a set of transactions without restricting the set size, and store the actual transaction data elsewhere. This can increase the bandwidth, but will it become less secure, I don't know..
The blockchain need to see the actual transaction and store it. Otherwise people wouldn't know their balances. Storing the data elsewhere would require a trusted third party.
Bitcoin requires no trusted third party to operate.