Fix Time#change when used with :usec or :nsec options together with offset times

This is a follow-up of #16758 and the branch is based on it.

Fixes #16759.
Being able to set `:usec` and `:nsec` doesn't really make sense or does it? Maybe they could be added together and checked that they are less than one second?