One explanation is that the Festival of Shavuot is actually the last (and eighth) day of the Passover Festival. What does this mean? Passover, which represents physical freedom, is not sufficient. It must be combined with spiritual goals and ideals that we received with the Torah on Shavuot. (Nachmanides)
The Maharal of Prague explains that the number seven represents the physical world with a natural cycle of physicality and spirituality combined together. The number eight, on the other hand, represents pure spirituality. Seven is the number of the days of Passover, the physical leaving from Egypt, but the true culmination of the Exodus was when the Jewish People stood at Sinai and received the Torah from God. Shavuot is not really just one day at all - it is the completion of the process that began at Passover.
There is another reason I have heard for Shavuot being one day. Each and every single day is really supposed to be viewed as if the Torah were being given anew that very day.
Happy Shavuot!