I don't care though, to make the copying much slower and less HDD intensive. Let the machine take it time with it...
A manual solution is to limit the transfer with pv. For a single file a basic command can be like:
pv -L 10M /source/file > /destination/file
Note this simple command won't preserve attributes (like cp -p or GNU cp -a would) and cannot copy file hierarchies. Therefore for anything more demanding use tar. Use the fact you can pipe tar to tar like this:
(cd /source && tar -c dirA/ dirB/ file1 file2) | (cd /destination && tar -x)
and it's like cp -R. It's useful for copying to multiple destinations or via SSH, netcat, any pipe. To solve your problem we place pv between tars:
(cd /source && tar -c dirA/ dirB/ file1 file2) | pv -L 10M | (cd /destination && tar -x)
You can use tar -c * (but keep in mind * matches non-dot-files); you can use some advanced options of tar. Don't use compression, you want to throttle the uncompressed stream.
Now the best part: with pv -R (invoked aside) you can change the settings of a running pv. This way you can adjust the throttle anytime; you just need to know the PID of your limiting pv. Use pidof pv to find the PID; or maybe modify the main command in the first place, so the middle part is:
… | pv -P /dev/tty -L 10M | …
and pv itself will print its PID to the terminal. See man 1 pv for details.
Suppose the PID is 2276. To change the throttle run pv -R 2276 -L 100M (or 100K, or 1G). Tweak it, find the setting that's best for you. Change anytime.
This answer can be combined with the nice+ionice idea. I believe renice (not nice) and ionice -p will allow you to renice already running processes.