Were there changes to AppStore 'password caching' in iOS 7?
You can leave in-app purchases on if you wish.

Once you have enabled Restrictions then at the bottom of the second section, Allowed Content you will see Require Password and underneath they even have a little prompt Require password for purchases.

Change this from the default of 15 minutes to Immediately and your problem is fixed.