Ubercart Roles: Expire to another role
Using Ubercart Roles, there is an event defined to trigger on sending the user a notification that their role has expired. You can use that event to trigger a rule, or you can define a role expiration event if you wish to tie it to a discrete event rather than the sending of an email. There is a proposed patch for Role Expire which creates a Rules event upon role expiration that you might use as a model.

Once you have created your rule, it is a simple action to assign a role (Add user role action) to the expiration:user.