I don't think widgets can update while the phone is asleep. Or at least none of the ones I use do. 5 minutes is ridiculous though, try 6-12 hours.
I've never experienced my phone waking up to perform a widget update either, but this is from the AppWidget docs:
Note: If the device is asleep when it is time for an update (as defined by updatePeriodMillis), then the device will wake up in order to perform the update. If you don't update more than once per hour, this probably won't cause significant problems for the battery life. If, however, you need to update more frequently and/or you do not need to update while the device is asleep, then you can instead perform updates based on an alarm that will not wake the device. To do so, set an alarm with an Intent that your AppWidgetProvider receives, using the AlarmManager. Set the alarm type to either ELAPSED_REALTIME or RTC, which will only deliver the alarm when the device is awake. Then set updatePeriodMillis to zero ("0").
My guess is that most widget developers just don't use updatePeriodMillis - it seems to be a poor choice in most cases compared to the flexibility of alarms