And I agree it's a fairly obvious risk if you stop and think about it, but it's not necessarily true that losing access to a feature, which is a reversible state, also permanently deletes all configuration data associated with that feature.
Regarding the branch protection feature, I can see it both ways, but I think overall I would have not expected them to be re-instantiated when upgrading to a higher tier again. Branches could have changed since then. I could have added more branches, deleted a branch which previously had the protection, then maybe created a new branch under the same name, etc.
Unless it's an immediate "I accidentally downgraded, revert all changes back again" action I think it's easier for GitHub to just let the user re-create what makes the most sense for them at the point of re-joining the higher tier. But like with most user features it's debatable...