If for each $x$ there is $b_i$ such that $\langle x,b_i\rangle\ne0$, then $\{b_i\}_I$ contains a basis Let there be a set $\{b_i\}_I$ in a Hilbert space $H$, such that 
$\forall x\in H\setminus\{0\} \exists b_i: \left< x,b_i\right>\ne0$.
How does this imply, that $\{b_i\}_I$ contains a basis?
It feels like this should be true.

Even though Justin was incorrect about orthogonality, his comment is right.
Choose a maximal linearly indepedent set of the $\{b_i\}$. In fact, you can define it as $\{b_i\mid b_i \notin \operatorname{span}(\{b_j\mid j < i\})\}$. For simplicity, re-index the reduced elements and call them $\{c_k\}$. Since $\{c_k\}$ is maximal, every $b_i$ is a linear combination of the $c_k$ - otherwise it could have been added to $\{c_k\}$ to form a larger linearly independent set. Because of this, you can show that $\{c_k\}$ also has the property that for all $x \ne 0$, there is some $k$ with $\langle x, c_k\rangle \ne 0$.
Perform Gram-Schmidt orthogonalization to get orthonormal vectors $\{d_l\}$. The resulting vectors are linear combinations of the $\{c_k\}$, and vice-versa. They too satisfy the same property as $\{b_i\}$ and $\{c_k\}$. 
Now consider the vector $x - \sum_l \langle x, d_l\rangle d_l$.
