Don't use the -k switch in the first set command (where you specify the unset time) but in your subsequent set-commands (where you assign some new value but want to keep it's unset time running).

Example:
Code:
alias settest {
  set -u5 %testX A
  ECHO -a set variable to value $var(testX,1).value $+ . unsets after $var(testX,1).secs secs.

  .timer -m 1 2500 newset
}

alias -l newset {
  set -k %testX B
  ECHO -a set variable to value $var(testX,1).value $+ . unsets after $var(testX,1).secs secs.
}