dd if=/dev/sda1 of=/dev/null iflag=nocache &
And afterwards I could see in free how the "free" went back up and the "buff/cache" went down, during the dd in the background ("available" remains).
Without the iflag=nocache I saw the same effect as you describe: "free" mem being used heavily -- I don't have swap activated, and I did fg and Ctrl-C before ...
Let's look at some of the things in your question:
As soon as I resume the output, the system begins slowing down, and within a minute it is again almost unusable.
This gives a hint that something is backing up over a period of time and eventually can't sustain its throughput. Since you said that this is on a different disk than everything else, it ...
This is explained in the "Interpreting the output" section of the fio documentation:
[...] BW is the average bandwidth rate shown as: value in power of 2 format (value in power of 10 format).
Bandwidth statistics based on samples
One (BW) is total I/O / time the other (bw) is calculated by averaging samples ...