You can copy any standard proof of Urysohn's Lemma and substitute "member of $\mathcal{B}$" for "open set" and "complement of member of $\mathcal{B}$" for closed set. 

Let $\mathcal{C}$ denote $\{X\setminus B:B\in\mathcal{B}\}$. Then point a says: if $x\in X$ and $C\in\mathcal{C}$ are such that $x\notin C$ then there is a $C'\in\mathcal{C}$ such that $x\in C'$ and $C'\cap C=\emptyset$. And point b says: if $C$ and $D$ are disjoint members of $\mathcal{C}$ then there are disjoint members $U$ and $V$ of $\mathcal{B}$ such that $C\subseteq U$ and $D\subseteq V$.

Now any standard proof will yield, given disjoint members of $\mathcal{C}$, a continuous function that separates them.