According to https://github.com/plone/plone.app.users, profile fields are extended via plone.schemaeditor and it can be set via plone.supermodel xml format. Permissions are set in xml via the sample code below. I think it is worth a try.
For the record I tested the trick but without the ZMI, by using edit as Xml in the Fields management of the Plone Control Panel. It worked but only half the time; now you see it, now you don't. After a few minutes of bewilderment i restarted both Zeo clients and everything was working fine, seems not is perfect in Plone Xml editor, but nice trick indeed @h2o ! Actually if there is only one field hidden in a tab the tab itself is not displayed, so it seems to work really well.
Slightly related: Reordering fields with the UI is sometimes not working (both with members, dexterity content types and collective.easyform, then you can use the same approach (or for dexterity/easyform TTW: edit the xml-schema TTW)
I have a local setup on my PC, I changed the xml and added a new field as mentioned in the link, but that change is not getting reflected, my newly added field is not visible on the Member Fields page,
I even rebuild using the following command, but of no help.