You could do this with the `timeout` command.
`timeout -s SIGINT 1h restic...`
That would let restic run for one hour, and then once the hour elapses send a SIGINT which will stop the process (see https://github.com/restic/restic/blob/a29777f46794ea4e35548f...)