If you go on the message boards for any game that uses a lot of chance, you will always see topics like this. By nature, we often see patterns where none exist. Our caveman brains were designed to pick patterns out of noise, and false negatives were a lot more costly than false positives. A false negative could mean death (from eating a poisonous mushroom, or getting mauled by a mother bear, or whatever) whereas a false positive just meant we developed a needless superstition.
Yes, random number generators are often biased or flawed, but those flaws usually don't manifest themselves in obvious ways like this. Which of the following looks more random?
1) 00101100000000111111
2) 01101001011101001010
The second one, right? The first one is a random string of 0's and 1's I generated using Python's random module, which uses the Mersenne twister algorithm. The second one I fabricated myself to appear superficially random (i.e. to alternate between 0's and 1's frequently, but without being a strict alternation).
See also:
http://en.wikipedia.org/wiki/Clustering_illusiontl;dr It's a bug in our brains, not in the code.