I assume you run in VPC configuration, not EC2 Classic.
One possiblity is that the VPC/subnet your Redshift cluster is running in is not accessible from the Internet.
Start up an instance in the same subnet. In the Redshift security group
allow all traffic from subnet (or VPC CIDR) to the port Redshift is
running on. Looks like you got that already as you allow from anywhere.
Try to telnet from that instance to the Redshift cluster
(telnet ). You have to get a connection or your
port or security group setting is off. Within the subnet the Redshift
endpoint resolves to the internal IP address, so it's down to the SG to
allow connection.
When this works, but you cannot connect from the outside there are a
couple of options. You are missing the IGW on the VPC, or the route on the
subnet to the IGW to route the Internet/public traffic to the cluster or
the SG blocks the traffic. The missing IGW/route you will most likely
experience when you are not able to directly connect to the instance you
spun up in the same subnet as Redshift.