3 suggestions - hope one of them works for you!
Suggestion 1.
See
http://msdn.microsoft.com/en-us/library/system.security.cryptography.cryptostream.aspx[
^]
I think you might need to be reading from your CryptoStream, not writing to it (no real idea why this would make a difference, but that's the way all the examples I've seen do it and the way I've always done it). There may be other ways of doing this, but try adapting the sample from the link above.
Suggestion 2.
Is there a possible issue with PaddingMode and/or CipherMode? Suggest you look at the length of your cipher text (before converting to Base64) - how many bytes do you have? This is a hunch based on the fact that what you have works with 8 bytes (1 block?) but not 9. When it fails, do you know what plain text it is giving back to you? Junk? Or just too few / too many characters?
See for example
http://connect.microsoft.com/VisualStudio/feedback/details/97915/padding-paddingmode-property-ignored-in-rijndaelmanaged-behavior-is-always-paddingmode-zeros-ciphermode-cbc[
^]
Suggestion 3.
Have you tried encrypting / decrypting in one routine (without round tripping via your web page) to see if that works? Does the web page deliver back the same Base64 string as you supplied?