Why does pH of a buffer solution change according to Henderson–Hasselbalch equation?
Suppose you have a $\pu{1.0 L}$ of acetate buffer solution made by $\pu{500.0 mL}$ of $\pu{1.0 M}$ $\ce{CH3COONa}$ solution adding to $\pu{500.0 mL}$ of $\pu{1.0 M}$ $\ce{CH3COOH}$ solution. Thus, $[\ce{CH3COOH}] = [\ce{CH3COONa}] = \pu{0.5 M}$. Therefore, according to Henderson–hasselbalch equation, $\mathrm{pH} = \mathrm{p}K_\mathrm{a} = 4.75$ ($\mathrm{p}K_\mathrm{a} = 4.75$ for acetic acid).

Now you add a little amount of acid ($\pu{0.01M}, \; \pu{5 mL}$). It disturbs the equilibrium and change both $[\ce{CH3COONa}]$ and $[\ce{CH3COOH}]$, according to the reaction:

$$\ce{CH3COONa + HCl -&gt; CH3COOH + H2O}$$

Now, the amount of $[\ce{CH3COONa}]$ is reduced by $\pu{0.01M} \times \pu{0.005 L} = \pu{0.00005 mol}$ and, similarly, $[\ce{CH3COOH}]$ is increased by $\pu{0.00005 mol}$.

Hence, new $[\ce{CH3COONa}]$ is $\pu{0.49995 mol/L}$ and $[\ce{CH3COOH}]$ is $\pu{0.50005 mol/L}$ (neglecting the volume change for convenience). Thus, new $\mathrm{pH}$:

$$\mathrm{pH} = \mathrm{p}K_\mathrm{a} + \log \left(\frac{[\ce{CH3COONa}]}{[\ce{CH3COOH}]}\right)= 4.75 + \log \left(\frac{\pu{0.49995 mol/L}}{\pu{0.50005 mol/L}}\right) = 4.7499 \approx 4.75$$

You see, it is a very minimal change. It is true that if you add more acid or base, change could be significant. However, all buffers have buffer capacity (usually, $\mathrm{p}K_\mathrm{a} \pm 1$). Nobody ever said $\mathrm{pH}$ of buffer is constant. It fluctuate withing the capacity. If you add too much acid or base, its $\mathrm{pH}$ would drastically change.