Hibernate can manage the client/server communication ? I thought it was just to manage the server/database communication, and we used OpenJPA for that, so it's kind of the same. My DAOs (yes the name isn't exactly the right one, but I tried to simplify) are for the client/server communication, and in my case for the GWT's RPC service implementation. And instead of having a lot of service (on for each screen for example), or a lot of method in one big service, I tried to have only one service.
And for the Date, JodaTime is awesome, but again, not compatible for the GWT's client-side. But yes, there is other solutions than the built-in Date.