Once you found out it was a ST3000DM001, you should have backed up immediately. 978 bad sectors has almost certainly exceeded the reserve sectors and would be eating into your files, which would absolutely account for the long time necessary to load folders.
With something like this though, you'd have trouble backing everything up via Windows โ try something like ddrescue
on a Linux live CD to account for the read errors. Failing that, you could see if a nearby repair shop has either RapidSpar data recovery hardware, or a PC-3000 which would make recovery of the majority of your content trival, and more affordable than full blown data recovery labs.