Could you not use multiple variables? The first one is used to flag whether you want the default value to be taken from the sharepoint list, the second one to be the value you want the toggle to show when the first is false?
For example, in the OnVisible of the page, have a statement declaring a variable: UpdateContext({isChange : false}). You can also declare another variable which will take the value from your sharepoint list with UpdateContext({myValue : DefaultSharepointValue})
From here, set the Default property of your toggle to a conditional statement with something like: If(isChange, myValue, DefaultSharepointValue)
You can then have it so that when the button is selected, it changes the isChange value to true and also inverts the value of myValue using UpdateContext({ myValue : !myValue, isChange : true})
You can then reset the toggle value to the sharepoint list by using UpdateContext({isChange:false}) anywhere you feel necessary