If you're still having trouble with stuff sticking to the bed a good thing to do before the start of a new print it to wipe down the bed with Isopropyl Alcohol (also called IPA). This gets rid of any oil from your hands and anything else that might be stuck to the build plate. I also check my bed level after every couple of prints, I'll get a BLTouch eventually haha.
I had a very similar noise coming from my hot end fan a few weeks ago and after carefully pulling the fan blade off the motor I found it was covered in dust and very thin strands of filament were wrapped around the shaft. I'd still order some spare fans just to be on the safe side, I had a fan die mid print (rip) and had to wait 2 weeks for it to come in so its handy having spares lying around.
View attachment 303224
As for the Filament sensor this STL might be a good one,
A simple mount for mounting a TriangleLab filament runout sensor on and Ender 3. Just print the mount, press it into the top 2020 extrusion and bolt the filament sensor with the included nuts & screws. You'll want to move your spool holder to the top right side of the printer. Using a filament...
www.thingiverse.com
I haven't used on of these myself but I imagine there should be a spot on the Ender 3 motherboard that you can plug the sensor into. Is your Ender 3 running the stock motherboard?
Hope that helps out mate!