Why do international legal bodies tend to have optional jurisdiction only?
This is because countries do not like to give up their sovereignty to international legal institutions. They feel that, if they are required to recognize some institution's jurisdiction over all issue, the international law would come to be superior to their own laws. This would take away their sovereignty.
An example of this is the International Court of Justice. The US, for example, has accepted its jurisdiction, but only with a clause saying that they US can reject that jurisdiction in any given case. It specified this because it does not want an international body to be able to override its own laws.
Think, for example, about what would have happened if President Bush were brought before the ICJ for war crimes connected to the war in Iraq. Many people in other countries wanted this done. The international community also disapproves of the US's death penalty. In both cases, the US would never stand for outside powers having the right to dictate to the US.