I have a 4.5 and it's just loose enough that it spins but would be too small if sized down to a 4 and I ever gained any weight at all, so I just bought these $10 adjusters from Amazon instead. It snaps on to the inside of the bottom of the band, and it's clear so no one will even know it's there unless they seriously stare at the bottom side of your finger for some reason. My band is under 2mm wide and the smallest size (the pack comes with many sizes) fits perfectly.
Maybe try some ring spacers? I got these from Amazon awhile back. My ring was also turning to the sides as it was just a teeny bit loose, but these adjusters helped.
If it's still a little big, I highly recommend these. I tried the spiral style and didn't like the feel of them, these were so much more comfortable. Invisible Ring Size Adjuster for Loose Rings Ring Adjuster Sizer Fit Thin Rings with Jewelry Polishing Cloth https://www.amazon.com/dp/B07WK2NNR6/ref=cm_sw_r_apan_glt_i_EGEVR1HJP40GR642R3EW?_encoding=UTF8&psc=1
I wear a 5.75 and my ring can spin and feel loose at times after I put it on, but a 5.5 is way too hard to get over my knuckle - especially first thing in the morning. I hate the feeling of the stone on my ring spinning throughout the day, so my favorite solution are these size adjusters. (Specifically this type, not the coil ones.) I snap one on AFTER I put my ring on and before I take it off and just keep them in the same dish beside my bed. Very comfortable and versatile solution.
Sure! Here it is! https://www.amazon.com/gp/product/B07WK2NNR6/ref=ppx_yo_dt_b_search_asin_title?ie=UTF8&psc=1
I honestly haven't tried any other options due to this one working well. It's just a little piece of plastic you slide under your ring after you put it on. I don't want to size mine down for the exact same reason--I'd like it to fit when I'm pregnant.
I highly recommend these! They're very comfortable and come with several different sizes to match your band width. https://www.amazon.com/dp/B07WK2NNR6/ref=cm_sw_r_apan_glt_i_EGEVR1HJP40GR642R3EW?_encoding=UTF8&psc=1