For your first question, no. It is still possible for non-similar matrices to both satisfy the condition $(J-\lambda I)^3=0$.
The condition $(J-\lambda I)^3=0$ means that your $J$ has no Jordan block of size 4 or bigger. They matrices could still be non-similar. For example, your $J^{(2)}$ and $J=\lambda I_5$ both have this property but $J^{(2)}$ is not similar to a scalar multiple of the identity.
Maybe this isn't surprising. It is generally easier to find something that doesn't match to show two things are different than to find enough stuff that does match to make sure two things are the same.
For your second question, there are a number of ways to see why these matrices cannot be similar (if the highlighted condition is true for one but not the other). Here's one approach...
What does similar mean? One way to define similarity is that $A$ is similar to $B$ iff both represent the same linear operator just possibly using different bases (i.e. there is some linear operator $T$ such that $[T]_\alpha=A$ and $[T]_\beta=B$ for some bases $\alpha$ and $\beta$ where $[T]_{???}$ denotes a coordinate matrix in basis ???). Changing bases merely conjugates one matrix to another.
Because the coordinate matrix map is linear and respects function composition/matrix multiplication we get: $([T]_{???} -\lambda I)^3 = [(T-\lambda I)^3]_{???}$ so that $(T-\lambda I)^3=0$ iff $([T]_{???}-\lambda I)^3=0$. This means that if one coordinate representation of $T$ satisfies the condition $(x-\lambda)^3=0$, then all coordinate representations must satisfy that condition. So if one matrix satisfies this condition and another doesn't, they cannot be similar.
More generally, we have that the dimension of a nullspace (= kernel) of a linear operator has to match the dimension of the nullspace of any of its coordinate matrices. Let $T$ be a linear operator and $A=[T]_\alpha$ some coordinate matrix for $T$.
Then $\dim(N(A-\lambda I)^k) = \dim(\mathrm{ker}(T-\lambda I)^k)=n_k$. For $k=1$, $N(A-\lambda I)$ and $\mathrm{ker}(T-\lambda I)$ are eigenspaces. So $n_1$ counts how many (linearly independent) eigenvectors $T$ (and $A$) have.
$n_2$ counts how many generalized eigenvectors killed by $(x-\lambda)^2$ we have. So $n_2-n_1$ gives the number of generalized level 2 eigenvectors (killed by $(x-\lambda)^2$ but not by $(x-\lambda)$).
It turns out that each Jordan block (associated with $\lambda$) of size $k$ has one generalized eigenvector of level $\ell$ for each $1 \leq \ell < k$. This means that each Jordan block accounts for exactly one eigenvector (so $n_1$ is the number of Jordan blocks). Then $n_2-n_1$ is exactly the number of Jordan blocks of size $2$ or greater. $n_3-n_2$ is the number of Jordan blocks of size $3$ or greater. etc.
So the numbers $n_1,n_2,\dots$ completely determine the number of Jordan blocks (associated with $\lambda$) and their sizes. Since these $n_k$'s are the same regardless of matrix representation, they are invariants under similarity transform.
This in the end is why your highlighted condition can detect that the matrices are not similar.