I am editing my original post, as I did receive a reply on the Apple Forums.
In summary: You cannot use NSTimer in Background (even if it works in the Simulator). If a timer functionality is needed then the allowed practice is use UILocalNotification. So, I am re-writing my code accordingly.
Wanted to share this in case others faced/will face the same issue.