okay i dont know about 5800x but I did have the same problem with my r7 3700x. your set up seem to be fine so does your cooler. I would add another fan to the top though.
You should go into your bios and checck the Core voltage that your cpu is running. If its on auto, it will spike up and down. from my experience ( my 3700x, it spike from 48-65 , randomly ) and its annoying when you have your fan curve set up. I fixed it by setting my Core voltage to manual at 1.300v. it was on auto and it was running hot with the spikes. with the fixed manually core voltage, my temp has been stable at 37-45 idle and 55 under load. You can test the core voltage best for your cpu, no harm nor performance lost under voltaging your cpu.