Can tokenValue hooks be used in scheduled reminder emails?
I ran into a similar issue of custom tokens not populating for scheduled reminders. The workaround in Brian Shaughnessy's comment on CRM-11153 fixed it for me:


  early in tokenValues put:


$single = false;
if (!is_array($contactIDs)) {
    $contactIDs = array( $contactIDs );
    $origValues = $values;
    $single = true;
}



  then at the very bottom put:


if ($single) {
    $values = $origValues + $values[$id];
}


$id may be something different in your hook implementation.

Other recent comments on that issue suggest that a fix may find its way into CiviCRM core.