1) 2 flats in 6 weeks is not all that bad. If you want to try to eliminate as many as possible you may want to try different tires when yours wear out. What brand and model do you use now? Kenda Konstrictor, Continental Gatorskin (most expensive of the 3), and the Vittoria Zaffiro Pro tires represent the some of the best lightweight road tire that fends off attacks that lead to flats. If your really wanting a super flat resistant tire then the Specialized Armadillo All Condition is the best but they are heavier then the other 3 by about 250 grams each...which is about the weight of a lighter tire! But they do work.
2) Sounds like you have a bent or broken ring gear tooth or teeth, or the gears are simply worn out. You might also have a worn out chain, or both! Usually if you keep riding a bike with a worn chain it wears out the gears thus both could be happening. Perhaps the chain is rusty, try spraying some WD40 on it, wipe it down, wait 24 hours then apply your normal chain lube. Or, it could be the bottom bracket got water in it and thus ruined it.