It's like that because of the artificial restrictions placed on upload speeds by the DOCSIS and ADSL protocols.
Huh? There's nothing artificial about it in the case of DOCSIS. Cable was originally designed to multicast video using a shared medium. Putting Internet on top of that is a very clever hack, but it doesn't get around some of the fundamental assumptions and designs of the system.
To download data from the node to the user you merely need to put it on one (or more) 6MHz channels, and the user's modem picks up packets destined for it while rejecting the rest. It's functionally no different from cable television; if you can get a clean TV signal on any given channel, then you can receive packets.
However uploading data is an entirely different beast. The cable infrastructure was not initially designed for 2 way communication, as it was optimized for one strong node/head-end talking to many clients. The importance of that being only one device had to do the talking, and that it could do so loudly to make up for signal degredation. However once you're talking about clients uploading, you now have to deal with signal and scheduling issues. Long story short, the only practical way to do that from a signal integrity standpoint is to use a lower bandwidth, more error tolerant encoding scheme (QAM64 up vs. QAM256 down), and furthermore you have to do it in the lowest frequencies because higher frequencies attenuate too much.
The net result is that while you potentially have 100 downstream channels, you only have around a dozen upstream channels. Which operate at a lower bandwidth and have to be shared among many clients. Consequently you simply cannot do a symmetrical network over cable due to the benefits and drawbacks of the shared medium. The laws of physics get the final say here.