First off your scores aren't that bad a 640 can get you into prime catagory assuming everything else is in line.
The best advice anyone can give to you is patience. The worst thing you can do is to rush into this. Work on paying down your credit card debt and lowering your utilization. This will go a long way in not only improving your score but it will help in lowering your Debt to Income Ratio.
Your Debt to Income Ratio (DTI) is something you have to be just as worried about if not more than your credit score. So work on getting that down below 30% below 20% is ideal.
Increase your savings, and your savings for your down payment. The larger the down payment the better the options will be available to you.
Again patience and don't rush into it, make sure ALL your bills are caught up, not just your credit cards and such but all your utilities bills as well. Increase your savings and other reserves and lower your DTI and you'll be just fine.
Hmm the money you are paying a financial planner could be money well spent somewhere else : ) Just food for thought