Hi,
You may be on to something about the water.
I have had the same problem as you.
I couldn't get my Bettas to be happy and content and normal.
I have had 7 different bettas from different souces in the past few years.
I am a germo-phobe and somewhat of a perfectionist and therefore,
I always maintained clean and perfect water parameters. Yet my Bettas would become sick and die.
After things werent going so great with the fish, I Started to think that I was cursed
and would not able to keep the fish.
BUT, There might be hope for you.
Bettas are hardy fish but that does not mean they like hard water.
Recently I started to purchase water from the petstore.
The fresh-water was filtered so that all the hardness if the water was removed.
The first day I did a water change, it was an 80% water change with this new water.
After that my bettas just seemed less stressed.
The males started to make huge bubble nests and the females stopped erratic swimming
and intense gill movements. (infact I wasn't even able to see their gills flapping anymore)
It almost seemed like they were more peacefull, more calm and more relaxed.
Your best bet would be to find out if the pet stores sell fresh water.
Chances are that if they do, the water they sell has been de-ionized.
This means that all the hardness has been removed and it is almost essentially pure water.
They usually use the term reverse-osmosis ( or R.O).
This is good water and your betta fish will be happy to thrive in this water.
It is the closest thing to actually have the soft fresh water that is available in the Thailand
rice patties without actually have that same exact water.
You will not have to add conditioner or any other chemicals to this weater, for that matter.
I was not a big fan of adding chemicals to their water and found it a sad alternative to keeping fish.
Reverse osmosis involves forcing water through a semi-permeable membrane do dissociate (or remove) all the ions that cause hardness.
This leaves good, fresh H2O.
Let me know what your results are when you decide to try it out.