Thank you for researching on this. I am having the exact same issue for months now to the point rtorrent is unusable. Changing ioscheduler to bfq (from Auto) did nothing to help. However, changing it to mq-deadline showed immediate results. IOWAIT fell back from 99% to under 10%. The speeds are still not great but atleast the torrents are downloading again. I too have NVMe(over a PCI adapter) for cache. It does look like I may have to move this to a dedicated unassigned drive but first need to figure out a way to move completed downloads to array and keep them seeding in th client. I am also thinking if NVMe drive is contributing to this as not everyone seems to have this issue.
Please update if you find a good solution.