Every set in $L_{\omega+1}$ is arithmetically definable. So, for example, the theory of true first-order arithmetic will be in $L$ but not in $L_{\omega+1}$; more precisely, it will be in $L_{\omega+2}$. More generally, whenever $\alpha$ is a countable ordinal we will have $L_\alpha$ countable in $L$, and so there will be a real in $L$ - but necessarily not $L_\alpha$ - which codes an explicit enumeration of the reals in $L_\alpha$ (or indeed all of $L_\alpha$). The connection between computability-theoretic complexity and explicit countings can be made precise via mastercodes - see e.g. Hodes' paper. Interestingly, if $\alpha$ is really big (but still $<\omega_1^L$) we may have to wait quite some time before seeing a "counting" of $L_\alpha$ appear in $L$ - this is an immediate consequence of downward Lowenheim/Skolem and condensation (consider the Mostowski collapse of an elementary submodel of $L_{\omega_1^L+1}$) but for more details see Marek/Srebrny.
I think the source of your confusion is the conflation between $\mathcal{P}_{def}$ and $\mathcal{P}^L$ (here $\mathcal{P}^L$ is the powerset according to $L$, and $\mathcal{P}_{def}$ is the definable powerset operation). In general (in fact, in almost every case) we have, for $x\in L$, that $\mathcal{P}_{def}(x)\subsetneq\mathcal{P}^L(x)$.
Let me say a bit more about the surprising weakness of $\mathcal{P}_{def}$. Since models of even very weak set theories are very complicated objects, I'll tweak things to be applicable to a broader class of structures at the cost of (seemingly) introducing a bit of a discrepancy. To keep things unambiguous, I'll call the new operator "$\mathcal{D}$" rather than "$\mathcal{P}_{def}$."
Suppose $\mathfrak{A}$ is any structure (in the usual sense of first-order logic, but allowing multiple sorts). Let $\mathcal{D}(\mathfrak{A})$ be the structure gotten from $\mathfrak{A}$ by adding an additional sort, where the objects in that additional sort are just the definable-with-parameters subsets of $\mathfrak{A}$; to the language, we add a symbol "$\in$" connecting the new sort and elements of the original $\mathfrak{A}$ in the obvious way.
(Really we should be adding all the definable relations, not just the definable sets, but that won't affect the point here.)
Now one natural guess - especially coming from experience with expansions-by-definitions - is that $\mathcal{D}^2(\mathfrak{A})\cap\mathcal{P}(\mathfrak{A})=\mathcal{D}(\mathfrak{A})\cap\mathcal{P}(\mathfrak{A})$. However, this fails badly in general! The reason is that, while each individual object added in the construction $\mathfrak{A}\leadsto\mathcal{D}(\mathfrak{A})$ adds no expressive power, by treating them as objects rather than relations we've gained the ability to quantify over them and so in forming $\mathcal{D}^2(\mathfrak{A})$ we can use formulas like "For every definable-in-$\mathfrak{A}$ set $X$ ..."
Here's one example of this. Let $\mathfrak{A}=(\mathbb{Z};+,1)$. It is known that the set of positive integers is not definable in $\mathfrak{A}$, and so is not an element of (the new sort of) $\mathcal{D}(\mathfrak{A})$. However, it is definable in $\mathcal{D}(\mathfrak{A})$, and so is a subset of $\mathfrak{A}$ added in $\mathcal{D}^2(\mathfrak{A})$ but not $\mathcal{D}(\mathfrak{A})$. The reason that the set of positive integers is definable in $\mathcal{D}(\mathfrak{A})$ is cute, so I've spoilered it:
Say that a block is a set $S$ of integers such that $1\in S$, $0\not\in S$, there is exactly one $y\in S$ such that $y+1\not\in S$, and for every $z\in S$ with $z\not=1$ we have $z-1\in S$. There are two possible "shapes" for a block to have: either it's an interval $[1,k]$ for some positive $k$, or it's a "cointerval" - that is, of the form $[1,\infty)\cup(-\infty, k]$ for some negative integer $k$. Given a block $S$, we can tell which type it has by asking whether the unique $u$ with $u+u\in\{k,k+1\}$ is in $S$ or not in $S$ (handling the case $k=1$ separately). Finally, putting this all together we have that $z$ is positive iff it is in some block of interval type. And every block is definable in $\mathfrak{A}$, so we can in fact make this query in $\mathcal{D}(\mathfrak{A})$!
(Similar tricks show that iterating definability can behave in quite surprising ways. See e.g. the various observations made here and here.)
Finally, let me end by addressing the apparent discrepancy between $\mathcal{D}$ and $\mathcal{P}_{def}$, namely that the extra-sort-generation of the former lets us identify the "levels" of the construction while the latter does not obviously do such a thing. In fact, there is no discrepancy at all but this isn't obvious: we can show that there is a formula $\lambda(x,y)$ such that for every pair of ordinals $\alpha<\beta$, we have $$\{x:L_\beta\models\lambda(x,\alpha)\}=L_\alpha.$$ (This is a good, if lengthy, exercise; as a hint, first prove the weaker result where $\beta$ is required to be a limit ordinal.) Since throughout this answer we've been using definability with parameters, this means that $\mathcal{P}_{def}$ is really well-modeled (at least for the stuff we care about here) by $\mathcal{D}$.
(As a final very-unrelated aside, let me just point out that we can abstract this approach to general logics and not just general structures; see e.g. 1, 2.)