It's probably a hardware problem, not a software problem, and the two problems in your question are probably related.
When a computer fan gets old it wears out and the fan blades aren't mounted snugly on the bearings. This causes the fan to make noise and friction causes the fan to slow down, sometimes to less than half of its normal operating speed. The fan has to run more of the time to compensate and makes more noise. In addition, it can cause the processor to overheat, especially when the processor is working hard starting up the operating system.
When you took the computer to the computer repair store, they diagnosed the intermittent hanging and the fan noise as being caused by a worn-out fan, which was a reasonable diagnosis, and so they replaced the fan, hoping to solve both problems, but the problem still remains unsolved.
Since overheating can also cause intermittent hanging and excessive fan noise, plan B would be to check the aluminum heat sink on top of the CPU to determine if it is so clogged up with dust and debris as to be unable to effectively circulate hot air away from the processor. If necessary replace the aluminum heat sink or at least have it disassembled from on top of the processor, have it properly cleaned, remove the old thermal paste, apply new thermal paste and remount the heat sink on top of the processor. This painstakingly complicated procedure would normally be a job for a computer repair store, and it's easy to break something if you don't know what you're doing. Despite its being complicated, it doesn't take much time for an experienced technician to properly do it. Depending on the circumstances, it could even be done while you waited in the store.
Circumstances being what they are with ordering computer parts, it may or may not be possible for the computer repair store to order a new aluminum cooling block for your laptop if you decide to go that route. The new aluminum cooling block normally comes with the fan securely mounted on top, eliminating the possibility of noise and overheating being caused by a bad job at mounting a new unmatched fan on top of an old cooling block. If the fan is not securely mounted on top of the aluminum heat sink, then it will vibrate and make noise, and the processor will overheat.
I obviously don't know for sure if the aluminum cooling block is clogged up with dust, but at least it's something to check. Another thing to check is the processor temperature. Psensor is a graphical application for monitoring hardware sensors, including CPU temperatures, GPU temperatures and fan speeds. If the speed of a fan is slower than normal and that fan is spinning all the time, this is a good indication that the fan is starting to wear out due to friction on the bearings.
You can install Psensor with the command sudo apt install psensor
.
for szFile in /proc/*/status ; do awk '/VmSwap|Name/{printf $2 "\t" $3}END{ print "" }' $szFile done | sort --key 2 --numeric --reverse | head
when both problems happen?