Gold eases off near 2-year high, silver crosses $21/oz