Below is what has worked for me. This was implemented a couple years ago before we had the capability of ordering columns within views and was the recommended approach at that time. Maybe there is another way now?
Basically, what I have done is created columns on the sheet placed where I want to group the columns under the tab. For example, in the image below I have a “Demographics” show column in the sheet. All the columns to the right up to the “Details” show column are shown on the Demographics tab. All column to right of the “Details” column up to next show column are shown on the Details tab. Ect…
Nothing special about the definition of the Show columns. Basically the same as yours.
Nothing special about the Form view. It shows the column based on the Table Order.
The resulting tabbed view looks like this: