There aren't ant apps that automatically change the ringtone. None of the ringtone apps can access the ringtones on the iPhone directly. All ringtone apps offer new ringtones, but they send the ringtones in an email, you download the ringtone onto your computer, then drag'n'drop those into iTunes to sync them to the iPhone.
Pretty sure developers are prohibited from creating apps that access the ringtones directly, and none of them would do what you want it to do anyways cause apps can't run in the background.