GPU overclocking does not work this way, there aren't two identical GPUs that will hash the same when you apply the same overlcoking setting on them, your post is missing many important details such as, RAM brand (Samsung,hynix or elpida) is it 4gb or 8gb ?
28Mh/s for an RX480 4gb is just about great, you might be able to squeeze another mh and get it to 29 but highly unlikely 30mh/s, if it's 8gb and is Samsung then you might be able to squeeze 30-31 Mh/s.
Anyway you can try to increase the memory clock slowly until you start getting rejected hashrat / error or overall unstable mining, once you can't increase the memory clock anymore start lowering power limit and core clock to as low as possible until things become unstable.
As for your gaming purposes, you can simply save 2 profiles on MSI afterburner, all you need to do is activate the mining profile when mining.
Thanks My bad sorry, Ram Brand Samsung, and it's 8GB
I will try changing profile. Can you tell me what settings you used to reach stable ?