Do a search on here for scope cant and leveling. Anything by Nervous Trigger is gold. It solved my issues. Basically you need to get a scope level that goes on the scope not the rails. Then hang a plumb Bob out whatever distance (further better?) and level the vertical cross hair with the Bob string. Then make the level read level and lock it down while you're plumb. Okay now your scope crosshairs will be level whenever your level says level. That's issue #1.
Step 2 to fix issue 2 is your vertical cross hair isn't in line with your barrel. This was weird the first time I read it but it makes total sense now I've done it. Okay get a mirror and put it 10 yards away from you aiming at it with your gun so you see yourself through the scope. Adjust parallax to 20 yards. With your scope ring screws loose, what you do is put the cross hair dead center up down left right of your objective lens in the reflection on the mirror. Then notice how the vertical hair will be off from the center of your muzzle hole. Okay rotate the scope until the vertical cross hair cuts the muzzle down the center (while you still aim dead center at your objective lense thru the mirror) and then tighten down your rings. Boom you just leveled your scope! Now whenever you take a shot you check your level for level which makes you cant the whole rifle so it is level and then your scope will be directly above your muzzle and any windage adjustments will stay true out to whatever yardage (assuming no wind of course). Pellet will drop at different distance but it should "ride the line" of your vertical cross hair the whole way there now, no side to side shift from your scope being canted and unlevel anymore.
All credit to Nervous Trigger not my ideas. But they work!