I do not think that this can be done the way you want. CellLabel can only be text, and CellDingbat and CellFrameLabels can be arbitrary cell expressions.
Both CellDingbat -> ... and CellFrameLabels -> {{...,None},{None,None}} work if the cell is only one row long. But do not automatically resize for multiple cells in the row (at least as far as I could tell). For instance:
Cell["Abcdefg", "Text", CellFrame->{{0, 1}, {0, 2}}, CellMargins->{{30, 24}, {6, 6}}, CellFrameMargins->0, CellFrameColor->RGBColor[0, 0, 1], CellFrameLabels->{{Cell[" Definition 1.1 ", "Text", CellFrame -> {{2, 0}, {0, 2}}, CellFrameMargins -> 0], None}, {None, None}}, CellFrameLabelMargins->0, Background->RGBColor[0, 1, 1]]

Putting a CellFrameLabel on top does not have this problem, but I don't know how to align it to the left ...
Cell["Abcde", "Text", CellFrame->{{1, 1}, {0, 2}}, CellMargins->{{30, 24}, {6, 6}}, CellFrameMargins->0, CellFrameColor->RGBColor[0, 0, 1], CellFrameLabels->{{None, None}, {None, Cell[" Definition 1.1 ", "Text", CellFrame -> {{2, 2}, {0, 2}}, CellFrameMargins -> 0]}}, CellFrameLabelMargins->0, Background->RGBColor[0, 1, 1]]

I think that perhaps the best solution would be to include "Defining ch.def:" in the contents of the cell.
Cell[TextData[{ Cell["Definition 1.1: ", Editable->False, Selectable->False, Deletable->False], "Abcdefg"}], "Text", CellFrame->{{1, 1}, {0, 2}}, CellMargins->{{30, 24}, {6, 6}}, CellFrameColor->RGBColor[0, 0, 1], Background->RGBColor[0, 1, 1]]

Make it not deleted by the average user and probably almost as good as the cell (frame) label. It may include counters so that it automatically shows the correct numbering. The only problem is that it does not appear automatically, but if you just copy a pre-existing cell, then this is not a big problem.
Edit: Add alias input that creates a non-delete counter
First we get the current input aliases,
oldAliases = InputAliases /. Options[EvaluationNotebook[], InputAliases];
then replace any existing Esc def Esc alias with our new one:
newAliases = Append[DeleteCases[oldAliases, "def" -> _], "def" -> Cell[TextData[ RowBox[StyleBox[#, FontWeight->"Bold", FontColor->Blue]&/@{"Definition ", CounterBox["Chapter"], ".", CounterBox["Definition"], ": "}]],(*"Text",*) Editable -> False, Selectable -> False, Deletable -> False]]; SetOptions[EvaluationNotebook[], InputAliases -> newAliases]
Since I don't have your stylesheet, I need to set up a couple of counters:
CellPrint[Cell["Setting the counters", "Text", CounterAssignments -> {{"Chapter", 2}, {"Definition", 3}}]]
Now I can use an alias in an existing cell - it inherits the style of the parent cell (unless otherwise specified):

Another option is to make a palette to go with your stylesheet. This would be useful since there is only a limited number of MenuCommandKey values ββthat you can use for your new styles (nb rewriting by default just confuses people). See this answer for an example of such a palette.