How to use the checked() function to check for a non-empty var

Not possible. You may do both, but may not be as optimal as single line:

$verify = (empty($var)) ? 'current_value' : $var;
checked( $verify, $current );

Or you can create a custom function:

function better_checked($check, $current, $echo = true) {

     $result=" checked="checked"";

     if ( ( $check != '' && $current != '' ) && ( (string) $check !== (string) $current ) )
          $result="";

     if ($echo)
          echo $result;

     return $result;

}