Field-level permissions will not be happening any time soon (years, probably).
In the meantime the workaround is to split fields across (linked) databases, and use lookups to surface field values from one db in the entity view of the other, if necessary.
Assuming that the ability to view/edit fields in related entities gets delivered, the UX for this will potentially be good enough to satisfy most use cases.
See here and here and maybe other topics.
Dynamic entity views will likely happen at some point, just no ETA, and will also likely contribute to making the linked-dbs-to-implement-field-permissions workaround even nicer.