Protect rescheduling operation with a transaction

Place the unschedule and schedule functions of the router
rescheduling operation in a transaction so the failure of
a scheduling doesn't leave the router unscheduled.

Change-Id: I35c5cd431db580f57b2dca4b81dea659d2059cd2
Closes-Bug: #BVS-2623

Reviewer: @kjiang