Why do pharmaceutical drugs have a expiration date?
It's a good question, and I cannot answer your specific example but can give some generic reasons why pharmaceuticals have an expiration date:

Degradation of the compound/formulation over time. This obviously comes to mind, but there is more to it than meets the eye. For example, you gave the example of an ointment and cited the active ingredient: however, the product you buy (and use) is more than just the active molecule. The whole formulation has to be stable, not only the benzydamine. The ointment is likely to be a complex emulsion, designed to target many different physical and chemical properties, including chemical stability, thermal stability, but also viscosity (so it's easy to apply), color, etc. I suppose in that particular case, the emulsion might be less stable than the active ingredient taken alone.
Also to note: many pharmaceuticals are sensitive to air, in many cases because they are unstable in the long term in presence of oxygen, or moisture. Such products are sold enclosed in a plastic, metallic or composite packaging that protects them. There, the limited stability in time might simply be due to the limit of stability of the (cheap) packaging itself: e.g., after some time of possible light exposure, plastic will become porous and let moisture in.

Being conservative, because we're talking about health.

Being conservative, because the company selling the product doesn't want to be liable.

Economics: it takes money to make absolutely sure the drugs are safe for a longer period of time. Are customers willing to pay more? Most people don't store drugs for use years later (nor is it recommended), so they won't see the point in paying more for longer expiration.