There are algorithms to move just two center pieces (which is technically a three cycle move), but they are slow and not advisable for doing the last two centers.
Stefan has the best approach. It took me a bit to warp my mind around the concept of center tredges, but I'm used to it. Had to keep straight when to do 1, 2, or 3 slice moves. The problem for me now is I have to mirror some of my algorithms as I now have "left" and "right" tredges. I can also mirror them with swapping "forward" and "back" as well.
I could get away with always tredging on one side using edges, because each edge has two sides. But with centers, they are each independent, so I have to do the mirror algorithms as well.
1x5 center matching is not good for long run.
Basically, your plan should be this:
1. 3x3 centers
2. center "left" tredges
3. center "right" tredges
4. 5x5 centers (done just like 3x3 centers)
5. inner edge tredge pairs
6. outer edge tredge pairs
7. do 3x3
Your centers are like this (going one step further)
Code:
GEDFG
FABAE
DBCBD
EABAF
GFDEG
There are 7 separate centers. Each center has four possible locations (outside of the main center (C)). Your 3x3 centers match up your A, B, C centers. I then do the DE tredge pairs. Then I do another 12 pairs for the DF pairs. It's important to differentiate early on between E and F centers. Once you build your DEF tredges, then ABC becomes your super center and the G centers are just like 5x5 corner centers.