The short answer is no, there isn't. QoS won't do this. The problem is simple -- your download speed is determined by which packets your ISP puts on the wire to you. Once you've received a packet, it has already consumed the precious inbound bandwidth and it's too late to do anything about it.
There are a variety of techniques that work very badly that you can mess with, depending on what router you're using. But basically, home Internet access is just not designed to do this.
You may be able to place download speed limits on the machine that you want to get less speed. But that software tends to limit it even when the full bandwidth is available.
One thing that does work well, however, is to use a web proxy like Squid and configure all machines to use it. You can provide bandwidth management in Squid with delay pools. Of course, this won't help if the issue isn't web access.