Update. (June, 2017) François Dorais and I have completed a paper that ultimately grew out of this questions and several follow-up questions.
F. G. Dorais and J. D. Hamkins, When does every definable nonempty set have a definable element? (arχiv:1706.07285)
Abstract. The assertion that every definable set has a definable element is equivalent over ZF to the principle $V=\newcommand\HOD{\text{HOD}}\HOD$, and indeed, we prove, so is the assertion merely that every $\Pi_2$-definable set has an ordinal-definable element. Meanwhile, every model of ZFC has a forcing extension satisfying $V\neq\HOD$ in which every $\Sigma_2$-definable set has an ordinal-definable element. Similar results hold for $\HOD(\mathbb{R})$ and $\HOD(\text{Ord}^\omega)$ and other natural instances of $\HOD(X)$.Read more [at the blog post](http://jdh.hamkins.org/when-does-every-definable-nonempty-set-have-a-definable-element/).
Click on the history to see the original answer. Related questions and answers appear at: