Why is completeness of reals a second-order sentence? Can’t we state the completeness of reals in the following way?

For every nonempty $X\in\mathcal{P} (\mathbb{R} )$, if $X$ is bounded above by some $a\in \mathbb{R}$, then $X$ has a unique least upper bound.

Note that the formulas “$X$ is bounded above” and “$X$ has a least upper bound” are expressible in first-order language.
Then why is this not a first-order sentence?

The terms "first-order" or "definable" or all these other stuff, are extremely unhelpful if you don't understand the context.
In this case, completeness is a second-order statement over the structure $(\Bbb R,<,+,\cdot,0,1)$. Indeed, you are literally quantifying over all $X\subseteq\Bbb R$. That is the exact meaning of a second-order statement.
But you might be confused, since this is a first-order statement from a set-theoretic point of view. And this is why set theory is a very nice foundation of mathematics: it takes these "naturally higher-order statements about natural objects" and convert them all into first-order statements about sets. 
