$\newcommand{\Ket}[1]{\left|#1\right>}$
$\newcommand{\BKet}[1]{\left<#1\right|}$
I went through the book and probably you have misunderstood something. However I will try to alleviate your confusion as best as I can.
'basis generated by the operators b is complete."
You are looking at a multi-particle system in Fock Space. $b_k$ and $b_k^*$ are bosonic operators.
Now what is the basis generated by these operators? we know that
$$b_k^*\Ket{0} = \Ket{1_k}$$
One particle with momentum k. A general ortho-normal Fock space vector is then.
$$(b_k^*)^{m_k}(b_q^*)^{m_q}...\Ket{0} = \Ket{m_k m_q ..} \tag{1}$$
where $m_k$ $m_q$ are occupation numbers. When you say these vectors are complete it means that any state of your system can be written as a linear combination of these vectors. Let us assume for convenience that $l$ represents a unique combination or occupation numbers and that we can represent $\Ket{m_k m_q ..}$ as
$$\Ket{m_k m_q ..} = \Ket{n_l}$$
Then for any vecotr $\Ket{v}$ if the $\Ket{n_l}$ is complete we can write
\begin{eqnarray}
\sum_l\Ket{n_l}\BKet{n_l}\Ket{v} = \Ket{v}
\end{eqnarray}
as this is for any vector we get the condition that the operator defined by $\sum_l\Ket{n_l}\BKet{n_l}$ should be identity
$$\sum_l\Ket{n_l}\BKet{n_l} = I\tag{2}$$
which is equivalent to saying the 'basis generated by the operators b is complete'.
Moving on to the main part of the question
Why does $[H_f,b_p]$=$[H_b,b_p]$ imply $H_f=H_b$?
I think you are mis-characterising what was written in the book. If I may crudely explain the procedure in the book.
You have an interaction Hamiltonian $H_f$ with Fermionic operators . In the book the author shows that the product of two of those ferminoic operators satisfy bosonic commutation relations. Therefore he intends to reduce a Hamiltonian involving four ferminonic operators to a problem involving product of two bosonic operators $b_k$ in hopes of diagonalising it easier.
Then he goes on to find the commutation relation between $H_f$ and $b_k$. the answer comes out to be
$$[b_k, H_f] = f(k)b_k\tag{3}$$
Then the author states
If we assume for the moment that the basis generated by b is complete, then $$[b_k, H_f] = f(k)b_k$$ define completely the Hamiltonian in the boson basis.
Let's see why this is true. If the basis generated by $b$, that is $\Ket{n_l}$ is complete, then if we can find
$$ \BKet{n_m}H_f\Ket{n_l}$$
for all $l$ it will completely determine the Hamiltonian.
We can rewrite the above expression as
$$\BKet{0}...(b_q)^{m_q}(b_k)^{m_k}H_f(b_k^*)^{m_k}(b_q^*)^{m_q}...\Ket{0}$$
Now as long as $\Ket{n_m}=\Ket{n_l}=\Ket{0}$ is not true, we can always re-order the creation or annihilation operator $b$ to the opposite side of the Hamiltonian $H_f$ such that we get zero plus or minus a commutator $[H_f,b]$. But we already know that the commutator is proportional to $b$ and thus we can evaluate the commutator trivially. In case of $\Ket{n_m}=\Ket{n_l}=\Ket{0}$, its simply the vacuum expectation value.
So it is true that $H_f$ is completely determined by the commutator. Now we want to write the Hamiltonian in terms of the bosonic creation and annihilation operator. The Hamiltonian then has the general form
$$H_b = \sum_k h_{qr} b^*_q b_r$$
Remember that you are writing the same Hamiltonian $H_f$ in a different basis, this is not a different Hamiltonian. Now if you substitute this into the commutation relations
\begin{eqnarray}
[b_p,H_b] = \sum_k h_{qr} [b_p,b^*_q b_r]\\
=\sum_k h_{qr} [b_p,b^*_q]b_r + \sum_k h_{qr} b^*_q[b_p, b_r]\\
=\sum_k h_{qr} b_r \delta_{pq}
=\sum_k h_{pr} b_r = f(p)b_p
\end{eqnarray}
As $b_r$s are linearly independent this implies
$$ h_{pr} = \delta_{pr}f(p)$$
Which gives the Hamiltonian in the bosonic basis as
$$H_b = \sum_p f(p)b^*_p b_p\tag{4}$$