First of all, congratulations on your new little one. With some patience and proper care I am sure he will grow to be a calm and wonderful companion. You say that you got him from a friend, do you have any information on how he was kept? It is possible that the friend was not caring for him well which could explain the aggressive behavior. Full disclosure: I am also a new bp keeper and am by no means an expert, that being said I have done a ton of reading and research and can share a few suggestions. Take anything suggested with a grain of salt, this is just reading and minimal personal experience, but more seasoned keepers will surely be along to agree or disagree with anything I might mention.
First of all, terrarium set up. Be aware that ball pythons do not need a basking lamp, it is a big point of debate but most keepers agree that they will not make use of it and it will just reduce your humidity. If you must have a top light for viewing, pick up a non-heat emitting bulb and make sure to keep his day/night cycle to about 12 hours each. Ball pythons in the wild live in rat burrows and derive most of their heat from the ground, not the sun. Belly heat is critical to their health, as is good humidity which the top light will make very difficult to maintain. Get a heat pad if you don’t have one already and make sure your humidity is at least 50-60% at all times. Higher is not always better for humidity, as too high or too low can cause respiratory infections. As for being cold to the touch, get the belly heat set up and see how he is. Keep in mind reptiles will often feel at least cool to the touch as their internal temperature is going to be lower than our body temperature.
As for behavior, it is my understanding that hissing is not a normal behavior in ball pythons at all. They really do tend to do better with minimal handling so I wouldn’t call it “normal hissing”. Ball pythons tend to be very docile, so if it were me and the snake were hissing, I would immediately read this as a sign of a very stressed and uncomfortable snake and put him back to calm down. He probably only struck at you because he was too stressed to cope with handling. My juvenile pastel has never hissed at me once. I handle him fairly regularly but only because when being handled he is out, exploring, and relaxed.
My best recommendation would be to ditch the lamp, get the bottom of the tank heated properly. If you can’t maintain a good ambient temperature without the heat lamp, get something like a ceramic heat bulb as they can be run steadily without affecting the proper day/night cycle. Make sure your humidity level is correct. Also find out the last time he shed and check for cloudy eyes or rubbing against décor. Ball pythons are known to become more “aggressive” right before a shed due to discomfort and clouded vision. They just feel more vulnerable. After getting all the set-up to the correct specs, give him a week or so to adjust and see if his behavior has improved.
He will be fine and so will you, just make sure you are giving him the correct habitat and enough time to settle and feel comfortable.
Feel free to message me if you would like, I'd be happy to help to the best of my ability.