ZFS slow scrub on two HDDs

What version of ZFS are you running?

Pre-0.8.x scrubs by traversing all metadata and data, as they are layed out on disks. This causes many seeks that kills performance on mechanical disks. If used with low-perf 5K RPM disks filled with millions of small files, this means very long scrub/resilver times. With these older ZFS versions, you can tune some ZFS tunables; for example:

echo 0 > /sys/module/zfs/parameters/zfs_resilver_delay
echo 0 > /sys/module/zfs/parameters/zfs_scan_idle

Be aware that increasing scrub priority would led to slower application performance.

0.8.x uses a batched scrub approach, where metadata are collected in larger batches and only then the relevant data are scanned. This results in much faster (ie: half the time) scrubs, without the needing to tune anything (the above knobs are not even present anymore).

So the more effective method to increase scrub/resilver speed probably is to update your ZFS version.