You can get an FHA loan. The PMI is pretty high and just became permanent for the life of the loan.
You can go with with single payment PMI, and pay for it out of pocket, or go with slightly higher rate, normally around .375% higher, but with your scores, the rate will probably be about .500-.625 higher to get out of monthly PMI
You can work with a credit cleaning company, many are bogus, but the folks at www.640.com are pretty legit and have helped a few of my clients.
Rural Development was mentioned, but you seem to make too much money for that program.