Have you tried the stock Clock app? It has a timer and one of the options for "When Timer Ends" is "Stop Playing." I've only tried it with the iHeart Radio app but it works. I set a 90 minute timer in the clock app, opened iHeart radio and started a station playing, then put the device to sleep by pressing the lock button. Audio continued to play in the background while the screen was off and, 90 minutes later, the audio stopped.