No need to over think it. You already have a rotary hop, so just drop in a Maple Leaf rubber and you should be able to lift any BB that you can afford. 70 or 60 degree, I wouldn't go harder. Softer will wear faster, but changing hop rubbers is cheap and quick compared to just about anything else in airsoft.
Buy a heavier spring or springs, depending on your site's energy limits. It's not an exact science, don't expect 140m / 459fps on a 0.2g out of an M140 spring, and be prepared to clip off a coil at a time and heat and flatten the end in order to tune the power. Get a chrono, and understand whether you need to tune for Joules at the BB weight that you're using (good site), or for fps on 0.2g (bad site).
You can use an outer barrel extension rather than a silencer to hide a longer barrel, e.g. https://www.ak2m4.co.uk/external-parts/outer-barrels
But bear in mind that barrel quality beats barrel length. I'm running an AOLS 455m, which to be honest is far longer than you need, it was just about willy waggling. AOLS or ZCI are fine at the cheap end.
Internals, eh, leave 'em alone. Maybe a full cylinder if you need it, and a full steel rack on the piston - although stock CYMAs shoot at up to 1.5J using a plastic rack, there's no need to change it until and unless it strips.
If your motor struggles, I'd replace that rather than fiddling with the gears. I like the Big Dragon M140 or M160 motors from Ali Express, you might as well buy honestly Chinese branded Chinese motors (or "mortors" as they say on the packaging ).
Locking to semi is just a case of cutting a bit off the selector plate. I'd suggest buying a spare one for that and keeping the stock one safely aside in case you want to go back to full auto.
Heaviest BBs that you can lift and afford, and don't expect instant magic from it, you'll have to tune and tweak it. One handy thing about having a longer inner barrel hidden inside a suppressor or extension is that you can remove the outer and rotate the inner if you have consistent curve to one side from the barrel being slightly rotated.