With conditional formatting, you can make text or text in a field disappear by setting the condition to change the text size to the maximum size possible, 500.
You can also set up a self-join relationship and use a portal that uses either a relationship based filter field (FileMaker 10 and older) or a portal filter expression (FileMaker 11) to control whether the fields in the portal row appear or disappear.
I can't do the portal, only because I'm one of three people using 11 in the office and the rest are using 8.5 currently. This is something that will be remedied in the future, but for now you're first solution worked well to hide the field labels. This way at least, no one will enter anything into fields without a description.
A relationship based filter (as opposed to setting one on the portal itself) will work with 8.5 also.