One reason I don’t see addressed very often is your drive is too full…
Hard drives have a head that is like a needle for records, or a laser for CDs. It has to position itself on a track then wait for the sector with the data you’re after to spin into position. The nature of circles is that the inside track is shorter than the outside so fewer sectors are available and it travels slower than the outer portion even though both make the same number of revolutions per minute. More data can be accessed on the outer track than on the inner track in the same period of time. Drive manufacturers and operating systems know this so data gets written from the outside in (and during defragmentation some operating systems try to move frequently used data on the outer tracks). Also if all your data is on the outer tracks that head doesn’t have to travel to the inner tracks which means you’ll get faster seek times.
The good news is the fix is easy, just buy a new drive. And while you’re at it make sure you’re getting a higher RPM drive than you had previously (the faster consumer drives are around 7200RPM). Or you can avoid this problem entirely with a Solid State Drive (and get a different set of problems).