Sherlock didn't like Molly because he thought she was ordinary; she wasn't dangerous, she wasn't mysterious, she wasn't really hot or sexy- not that it mattered to Sherlock, really, buy it came under the danger thing. She was pretty, quiet enough, helped him with his work and was fairly intelligent, but she didn't interest him.
That was how he viewed the fake Molly; the real Molly had planted bombs, fought assassins, occasionally became an assassin when it was necessary, warded off wars, had an IQ high enough to classify her as a genius and had saved London from terrorists more times than she cared to remember. Sherlock didn't know this because he couldn't know; he had amazing powers of deduction but Molly knew how he worked and knew how to keep things hidden. That was why Jim loved her- she was the most dangerous, mysterious, sexy girl he had ever met and she definitely wasn't on the side of the angels, no matter how convincing her performance was. She had a good heart, yes, but she wasn't boring or girly or afraid of violence- or in her case, stopping it while using it. Jim liked her, Jim liked her a lot. And she liked him too. They were the perfect team, kind of Bonnie and Clyde, or Donovan and Anderson, or even John and Sherlock. Consulting criminal and consulting super spy- you can see how that could work.
They had been together for a while- they lived together, worked together, slept together, were always together. And he liked it that way.