I don't think readonly variables in bash are useful. I can't think of any issue I've seen that could have been prevented by making a variable readonly. Such limitations goes against the dynamic nature of bash. There are other more common causes of issues (like mispellings or forgetting to declare variables as local) which are impossible to prevent anyway.
If you want to split things off try to only split "functions", not just chunks of code. It's easier to reuse a small thing if you know "source ~/myscript.sh" doesn't actually do anything.