You're about five minutes faster than me so I'm not sure what you do already since I'm doing pretty basic things for last 4 edges and last 2 centers. For edges I just solve the first eight that standard way breaking the centers into lines. Then for the last four I solve the two inner edges right next to the midge and solve parity if I have it. Then I solve the outer edges and solve parity if I have it. It's not the most efficient when it comes to dealing with parity but I think the alg I use won't solve inner edge parity if everything else is solved. Haven't really experimented with single slices of the 3rd innermost layer though. That could work.
For Centers I solve almost always with 1x5 lines unless I see a 2x2 or 2x3 block in which case I'll build that real quick and insert it. Last two centers I get as many solved as I can and then use the commutator. I usually end up using the comm 7-10 times. On a good solve it will only be 4-ish. I really need to work on doing lines though. You can always get it to where you only need to use the commutator once to solve the last two centers apparently.
My first two centers take me about 2:30 right now and total for centers is around 6 minutes-ish. It all depends on when I get to the last two. It takes me at least a minute to finish up the last two centers once I start using the commutator. My 3x3 phase is about 1:00-1:15 assuming I don't make a mistake.
That's pretty bad lol any advice?