GSON parsing - nested classes or not
But what differences would there be if I had the above classes as
  nested classes in the Wrapper.java class? Or is creating them
  separately and then putting them in a package more preferable?


It depends on your information hiding principles.
In general, it's good to hide as much information as possible.
The fewer classes you expose,
the fewer classes you have to support,
and therefore the more freedom you have to make changes later.

So, if these classes don't need be visible by users of your library,
then they can be nested inside Wrapper.
Wrapper too, looks like something that shouldn't be exposed.

On the other hand: (from Effective Java by Joshua Bloch)


  A nested class should exist only to serve its enclosing class. If a nested class would be useful in some other context, then it should be a top-level class.





  What are the differences in terms of speed, efficiency, design, or
  anything else anyone could advise on?


Speed, nothing. Efficiency, nothing.
The difference is in API design.
Everything that's public is a liability for you.
Once other developers start using it,
you'll have to pay attention to the changes you make,
in case you might break compatibility.