The callback can be whatever you want it to be as long as it’s internet accessible (and HTTPS for certain topics), it doesn’t have to be the same as your Auth process callback, and while that callback will work for you because you can access your localhost, no one else can meaning I can’t go through your auth process, and Twitch can’t send Webhook notifications there.
As for why you’re getting an Unauthorized error I’m not sure as the Stream Change topic doesn’t require any special Auth scope. Try see if you still get that error when using a callback URL that’s actually valid to be used for webhooks.