You've already stated the fact British shows tend to have fewer episodes than their American counterparts (see here for a great explanation).
However, there are a few other things to consider when discussing Sherlock. From a Digital Spy article:
"[The format is] very closely held," [PBS Executive] Eaton told Collider. "Steven
[Moffat] crafts them, and Mark [Gatiss] writes some of them. It's a
lot of work, and [Steven] also does Doctor Who and he worked on
Tintin, so there couldn't be more than three."
Eaton argued that Sherlock co-creators Moffat and Gatiss use up all of
their "creative juice" on the show.
"I think there will only ever be three at a time, if we're lucky," she
said. "It's getting harder and harder to do another season, not just
because Benedict and Martin [Freeman] are getting such high profiles,
but Steven and Mark are busy and in demand."
So it does appear that, in addition to the excellent answer I linked to discussing the shorter British seasons, the fact that Moffat has so many other shows to look after means they are on a very tight schedule and don't have time for more episodes.
Edit
Also, to give more background on the schedules of Cumberbatch and Freeman, consider just Cumberbatch's acting roles since Sherlock began:
Cumberbatch:
- Tinker Tailor Soldier Spy
- War Horse
- The Hobbit
- Star Trek Into Darkness
- 12 Years a Slave
- The Fifth Estate
- August:
Osage County
That's a lot of production in a short period of time. Not only are the creators of the show busy with other projects, so are the lead actors.