Upgrading was the easy part. MetroPCS has a page of instructions on how to upgrade. I took the "Self Upgrade" option. Note that the actual download is from the Huawei Devices site. One thing I was a little confused about is that after you connect your phone to your computer, you must mount the SD card via your phone. I kept trying to run "mount" commands from my computer...
The hard part was obtaining root. First I tried z4root, the app that rooted Android 2.1 for me. No luck. After some searching, I learned about Gingerbreak. I tried v1.2, then v1.3, then v1.1. None of them worked. Argh! And now my battery is draining like crazy! I'm I relegated to a life of recharging my phone every day?!?! Lots of Google searching just turned up more and more references to z4root/gingerbreak. And, I couldn't seem to find anyone with my problem; until...
...I found this post. tokill88 was stuck in a similar situation... had recently upgraded to 2.2.2 and Gingerbreak wouldn't work for him. The thread was dead---3 months old. I registered and added my sad situation. I looked back a few minutes later and there was a reply from "Senior member" ShinySide suggesting SuperOneClick. Seriously? Could that be it? I had a little trouble downloading it and figuring out how it worked, but this video helped a lot. Note that I couldn't run SuperOneClick on XP, but it worked on Vista (yes, it requires Windows).
After rooting via SuperOneClick, I wasn't sure whether I actually had root. I tried Titanium Backup, which is how I removed bloatware from Android 2.1. It couldn't get root. Huh? I found threads talking about this problem and how to fix, but TB didn't even have the same interface. Somewhat randomly, I tried setting TB to "Force System BusyBox". I then restarted via Menu->More->Reload Application. Viola! But, that wasn't all. TB couldn't find the applications I really wanted to remove, like MetroPCS Easy Wifi. This problem was easier to solve (but more expensive). Install Root Explorer via Market and delete everything in /cust/metropcs/us/app. Done!
Was the pain worth it? Yes. I feel like I have a new & improved phone. Everything is faster. Settings->Applications->Manage Applications is useful; it shows me all running applications, not just the ones I started and lets me "force stop" ones I don't want to be running. I still use Advanced Task Killer, but the "Manage Applications" gives me more control and "force stop" really works.
The one thing I don't like about Android 2.2.2 is that I can't control end button behavior. I used to be able to hit the "end call" button to put my phone to sleep. Now I have to hit the power button. Annoying, but I'll live.
P.S. In case you brick your phone, I bet this post would be useful.
P.P.S. This seems to be a good article on task killers. As noted, CPU is more precious than memory; killing and restarting an app uses precious CPU. So, if an app you don't use restarts itself every time you kill it, what you really need to do is root your phone and remove that rogue app.