How I do it: Platinum player (all races)

When I play protoss, i have separate hotkeys for my main army and HTs. I do this for every support unit for every race or matchup.
TBH, with time and practice you will improve your ability to storm the right units at the right time.
I suggest you to try out this tactics:
  •  Send 1 or 2 HTs to storm your opponent before the fight starts. For this to work you need a distraction such as a warp prism. You send a warp prism (or dts, etc), your enemy looks at his base and u storm his army (he doesn't see it coming so he doesn't dodge the storm). This is somewhat situational and probably wont work in higher leagues, but it can be quite devastating if executed well (plus its a lot of fun).
  • Sending your HTs from a different direction. It's quite hard to do it, but it is extremely deadly. I think it's pretty self explanatory why.
  • Treat each HTs as a "hero unit". In BW, smartcast doesn't exist, which means you are "obligated" to manually use storm for every single HT. By this i mean don't cast storm randomly. Wait for the HT to be in position. Be patient and precise.
The number of HTs you should have is situational. I suggest you take a look at some pro level games and take notes.
I don't think there is a way to upgrade storm. Just land it at the right time and on the key units.
PS: You did it easily because you were focused and calm. You gotta be like that during intense endgame fights.
Micro sure is important, but macro is much more. Focus a lot on macro to be sucessful.