Solutions to Pokeballs and Pokestops, to stop people from rural areas/small towns to quit the game:
1. Introduce Mini Pokestops. Mini Pokestops will pop up just like the Pokemon do on the map. Mini Pokestops will only give you 50 % of what a regular Pokestop will though. So instead of getting 4 items, you will get 2 items. I am not a programmer, but I suspect this would be an easy solution with easy logistics and medium balancing. Make it so that the Mini Pokestops will pop up at a steady rate if there are no regular Pokestops around, and less so if there are Pokestops around.
2. Introduce Daily rewards. Give players who log in a daily reward every 24 hours. The higher level you are, the more items you will get. So if you are level 3 you will, for example, only get 20 Pokeballs and a couple of Potions and Revives. At level 16 you will get Great Balls and Super Potion. Just a few though. If your bag is full, you will be able to do some item management, where you can delete items, and choose what do take from the daily reward list.
3. Introduce an infinite amount of regular Pokeballs. At later levels, you will begin to exclusively use Great Balls and Ultra Balls. Why not just make it so that the players will eventually have an infinite amount of regular Pokeballs. Let us say at level 12, when you start getting Great Balls. Or better yet, scrap that, why not just introduce it permanently, from level 1. People living in cities basically never have the problem of running out of Pokeballs, so why not just make this equal to everyone.