I think that for a change like this that there isn't a particular value in doing this as a single transaction. The one circumstance where nothing else will do is when you're trying to close a sold option position while opening a new one, and you don't have the cash to close first and then separately open new. You can usually get around this problem if you have enough cash to close one option - just do a bunch of little transactions to work your way through.
A benefit, while not being unavailable as separate transactions, is that a roll transaction is a way to manage the bid / ask and share price change slippage during the two transactions. But keep an eye on that bid/ask range - Fidelity defaults to a limit order at the worst end of both trades. I change it to the mid point but sometimes can't get the order to fill. The bigger that bid/ask spread, the more likely I personally would enter as two orders (and hope the share price is in my favor during that window between first and second transaction).
I don't know which will be better - sell when up or down. When the price is higher then the 800 strike calls will be worth more. WHen the price is lower those 300 strike calls will be cheaper. I'd guess on the balance being in favor of the 300s due to much higher delta. I'm pretty confident that you'll have fewer of the 300s than the 800s.
The question I'd ask myself - what was the thesis behind buying the 800s originally and does that still hold? Or have you identified something different you'd like to do with that money? Those 800s provide significantly more upside when the shares move up (or at least they probably do - I'm assuming you have more of these than the 300s you're thinking of switching to). If that was the investment thesis - leveraged exposure to big upward share moves, then the change to 300s will reduce that leverage (you'll gain a lot of extra time though).
One observation I will make about those 800s - the time value on them is going to start going down in an accelerating fashion from here on out. I personally plan to close / roll these long dated calls with somewhere around 3 to 6 months to expiration. The more OTM they are, the more time value they have (its all time value for those 800s) and thus more absolute value time decay to experience.