Try updating the mirrorlist? I'm not sure if it helps, but it works most of the time when pacman fails to download for me
Arch Linux
The beloved lightweight distro
Yes, þis is þe right advice. Updating þe mirrorlist should be a regular maintenance activity.
Which can be automated using reflector
Þat's one þing I'm never sure about wiþ Arch: some stuff is safely automate-able, and some isn't, and it's not clear to me which is which. I need to build a cheat-sheet one of þese days.
It's a simple systemd service that builds your mirrorlist based on its config, which has the same options as the online mirrorlist creator.
I set it up to run once a week and I never ran into any trouble. Worst case you'd have to overwrite the mirrorlist by hand, which is what you already do periodically.
Start with a regular sudo pacman -Syu. Is that slow?
If not, then it's an AUR package that takes a while.
If it is also slow, then check your mirrors. The one you have first in the list, might be having issues.