Why are genes expressed as proteins rather than other types of bio-molecules?
Wow - like a biophilosophy question! The answer lies in in building up the largest diversity with minimal subunits. Efficiency if you will. In this case we are talking about amino acids. We only need 20 of them to approach unfathomable numbers of diversity.

The protein acts as a messenger, as an enzyme, a carrier and it's own building unit. If you wanted that kind of range out of any other known biomolecules, you would need a gene to code for each of them, and itself a gene a completely different mechanism to build them which we can't even fathom. It's so much simpler to code for a protein, which can act as an enzyme to build other biomolecules.

However if you are asking about why the central dogma of molecular biology is the way it is...well then, it seems to be axiomatic.