I’m not particularly familiar with Twitter4J’s way of expressing errors, but the status code it is indicating, “-1” suggests to me that your connection isn’t reaching api.twitter.com at all, rather than it timing out on Twitter’s side.
I would verify that your machine is capable of connecting to Twitter through SSL by using curl on the command line to fetch a simple endpoint like:
curl -I "https://api.twitter.com/1/help/test.json"
If that works, then at least SSL and your network connectivity seem to be configured correctly and you can move on to Java environment-specific details.