Hardness as you say may be a problem, the second may be your lightning. If you keep fish or other life stock you do not need,to fertilize the plants. Substrate may be a problem if it is lime stone or similar that hardens the water and the substrate, but otherwise, you should not worry too much.
Looking from your pictures it looks like you are using a led light. And here may very well be the source of the problem. Leds are great no question about it, but they are tricky. Wrong leds and the plants basically are in total darkness. While to the human it looks normal. Plants like specific wave lenghts to grow well. But if you put in leds in that specific spectrum, it will look like an ugly x-mas tree. So one has to mix different leds to make it look nice and to have plants growing well.
From personal experience i can tell, that two similar setups, with only difference was type of led light made all the difference. In the first one all plants died, in the second I cant remove them fast enough they grow super fast. That is a 1200 litres aquarium totally overgrown with plants.
When selecting led light for an aquarium it's not enough to with certain kelvin values, you need to look at the spectrum and make sure you have enough light in the area that plants grow, without making it look all purple. Unless you like that for some weird reason.
Here is a link to an article explaining this. Selecting led's according to the chlorophyl graph probably will make all the difference for you. If your handy you could build your own. Adding green led's and different white led's will make it look beautiful to human eye too. Understand also that humans sees green colors the best, so you do not require same amount of all types if you build it yourself.
Lighting Spectrum and Photosythesis - Lighting - Aquatic Plant Central