I had a very similar problem with the redirect and just fixed it.
Your proxy file looks correct which was one of my problems.
The changes I made:
First: I had the backend variable BETTER_AUTH_URL set to the wrong url. Should be your frontend url.
Second: changed how I was routing (Not router.push())
const commentsUrl = `/api/comments`
const response = await fetch(commentsUrl, {
credentials: "include",
});
Feel free to check out my github repo with the implementation.
I also created a claude skill after debugging all my better-auth problems.