Usually should be done about once a week or once a month, or every few months, really depends on the dog. Have your vet check her out and see what they say, they will know best.
As for the foods. Yes prescription diets are very expensive, but from what I understand should not be fed permanently. Royal Canin is the best out of the ones you have tried (that you listed) but still not that great. You can check out this link here to get free samples:
http://www.yorkietalk.com/forums/yor...e-samples.html
This one to grade your food:
http://www.yorkietalk.com/forums/yor...ing-chart.html
But I really like this site bc it's easy to read and understand, and NO MATH! yay!
Dog Food Reviews | Dog Food Ratings
Royal canin only got 3 out of 5 stars, and IMO our babies should get nothing less of 5 stars!
Here's their grading:
Royal Canin Mini Adult Dog Food Review and Rating
Check out the 4 or 5 starts links and you can find most of those brands at petco now. Most petco's have redone their stores to have the super premium stuff now. I feed Wellness Core that is 5 stars, and my picky super skinny Uni likes it and has gained a few ounces!
Oh ETA: that for the price of RC you can get a much higher quality food for less $$. I sign up for email coupons from Wellness and get $3 off each month, so one small bag costs me only about $12 and lasts about one month for two dogs.
Sorry for all the rambling.