An alternative is to plot the data over 3 separate time ranges and combine the 3 plots. Here is how to do it set out step by step. Firstly it looks like your y axis scale is logarithmic right? In that case I am using DateListLogPlot but if I have misinterpreted you can easily switch to DateListPlot.
The objective is to create 3 plots and adjust the image padding in each plot then combine the 3.
data = Partition[data, 3];
hour = 35 (* pixel width of each hour *);
w = 11*hour;
h = 300;
(* image padding *)
{{l, r}, {b, t}} = {{30, 5}, {30, 5}};
(* options used in all plots *)
commonOptions = {
GridLines -> {Thread[{2013, 1, 1, Range[24]}], None},
GridLinesStyle -> LightGray,
PlotStyle -> {Blue, Green, Red}};
(* first 7 hours *)
p1 = DateListLogPlot[data, DateTicksFormat -> {"Hour"},
AspectRatio -> h/hour,
FrameTicks -> {{Automatic, None}, {None, None}},
ImageSize -> {l + hour, h + b + t},
ImagePadding -> {{l, 0}, {b, t}},
PlotRange -> {{{2013, 1, 1, 0}, {2013, 1, 1, 6, 23, 59}},
Automatic},
commonOptions];
(* main plot *)
p2 = DateListLogPlot[data, DateTicksFormat -> {"Hour"},
AspectRatio -> h/w,
FrameTicks -> {{None, None}, {Thread[{2013, 1, 1, Range[24]}],
None}},
ImageSize -> {w, h + b + t},
ImagePadding -> {{0, 0}, {b, t}},
PlotRange -> {{{2013, 1, 1, 7}, {2013, 1, 1, 18}}, Automatic},
commonOptions];
(* last 6 hours *)
p3 = DateListLogPlot[data, DateTicksFormat -> {"Hour"},
AspectRatio -> h/hour,
FrameTicks -> None,
ImageSize -> {r + hour, h + b + t},
ImagePadding -> {{0, r}, {b, t}},
PlotRange -> {{{2013, 1, 1, 18, 0, 1}, {2013, 1, 1, 24}},
Automatic},
commonOptions];
So combine the plots:
Grid[{{p1, p2, p3}}, Spacings -> {0, 0}]

Notice how the "18" tick label is obscured. To get around this alter the middle plot with extra padding to the right and use Overlay
p2 = DateListLogPlot[data, DateTicksFormat -> {"Hour"},
AspectRatio -> h/w,
FrameTicks -> {{None, None}, {Thread[{2013, 1, 1, Range[24]}],
None}},
ImageSize -> {w + hour + r, h + b + t},
ImagePadding -> {{0, hour + r}, {b, t}},
PlotRange -> {{{2013, 1, 1, 7}, {2013, 1, 1, 18}}, Automatic},
coomonOptions];
Grid[{{p1, Overlay[{p2, p3}, Alignment -> {Right, Center}]}},
Spacings -> {0, 0}]

If you are doing this regularly you should be able to combine these steps into a function. The code is lengthy because you have 3 plots with options but nevertheless it is relatively straight forward to modify.
Other things to consider:
The "gridlines" at t=7 and 18 are actually the frames so you could alter the relevant vertical FrameStyle to make them the appear like the other gridlines.
I haven't added horizontal gridlines but easy enough for you to add.
I haven't added x axis ticks in the "unwanted" periods but you make a tick function that displays a tick mark but not a tick label.
I haven't added a plot label. Add this to plot #2.
data={#,RandomVariate[NormalDistribution[0,1]]}&/@RandomReal[{AbsoluteTime@dtIni,AbsoluteTime@dtFim},500];the original one is just like that. Tks! – Murta Jan 9 at 22:58