Liverpool doing what they failed to do against Everton and Aston Villa that made them draw those two games but the difference is that they are doing it too early. Manchester City playing very well but can't finish off their nice play, Doku really giving AA a hard time in that wing. As it stands Liverpool is ahead of Manchester City with 20 points difference, I don't think any team has ever had that much points against Pep's side until now.
The match of Liverpool against Everton and Aston Villa were major setback to Liverpool because those matches made them lost a total of four points which would have been a big opportunity for them to give Arsenal more gaps. As they are leading Manchester City by two goals to nil, they will likely get three points to continue to advance their pursuit of the Premier League title. One of their goal was disallowed as offside else they would have been comfortably leading by three goals to zero.
Both matches against Aston Villa and Everton were drawn 2-2. Liverpool lost points in both matches. If Liverpool had lost points against City too, Arsenal could have reduced the gap with Liverpool by more points. But Liverpool players did not make any mistakes in this match. Liverpool managed to score two goals while Manchester City did not score a single goal.
I would say that City lost this match because of their poor match strategy. Liverpool attacked very less compared to Manchester City players. Although City players had a total of 16 shots, Liverpool players had only 8 shots. However, Liverpool was able to find the weakness in City's defense. As a result, Liverpool won 2-0.