1 GB file size means 1e9 characters, which are 2e9 bytes. This sounds like a 32 bit limit, so please test, if the limit is at 1073741824 characters. If so, the underlying C-function is the cause of the limit.
There have been further limitations of Matlab string functions, when the data contain CHAR(0) in several releases. Even printing a cell string stopped, when one of the elements contained no data, but this has been fixed in R2006a as far as I remember.