LED only lighting up when my hand is hovering over it
In general this sort of symptom happens when you have a floating input. This suggests that there's some input, probably to the 595's, that you think is connected but isn't. Could be on the Arduino, if it's something the Arduino code is waiting for. Could even be a wire that's connected, but the Arduino code forgot to set that pin to output.