Вы правы в отношении установки значений по умолчанию и можете сделать это:
options {
timeout(time: params.timeoutTime, unit: params.timeoutUnit)
}
parameters {
string(name: 'timeoutTime', defaultValue: '30', description: '')
string(name: 'timeoutUnit', defaultValue: 'MINUTES', description: '')
}
Когда вы запускаете сборку вручную, она будет использовать заданные вами параметры. Для сборок, запускаемых по таймеру, будут использоваться значения по умолчанию.