Let $a,b\neq 0$. I'll show that $B-A$ is p.s.d. if only if $a = \lambda b$ for some $|\lambda|\leq 1$.
We have
$$ \langle v, (B-a)v\rangle = v^T(B-A)v = v^Tbb^Tv - v^Taa^Tv = \langle v,a\rangle^2 - \langle v,b\rangle^2 $$
For $B-A$ to be p.s.d we need that $\langle v,a\rangle^2 - \langle v,b\rangle^2 \geq 0$. Lets compute
$$ \min_{v\in\mathbb{R}^n} f(v)\text{ where }f(v)=\langle v,a\rangle^2 - \langle v,b\rangle^2. $$
We can write $a = \lambda b+h$ where $\langle h,b \rangle = 0$, so:
$$ f(v) = (\lambda^2-1)\langle v,b\rangle^2 + 2\lambda \langle v,b\rangle\langle v,h\rangle + \langle v,h\rangle^2 $$
We can also write $v = \lambda' b + h'$ where $\langle h',b \rangle = 0$:
$$ f(v) = (\lambda^2-1)(\lambda')^2\langle b,b\rangle^2 + 2\lambda \lambda' \langle b,b\rangle\langle h',h\rangle + \langle h',h\rangle^2 $$
For a fixed $\lambda'$ we have a 2nd degree equation in $x = \langle h',h\rangle$ (we are free to choose $h'$, but not to choose $h$, so, in order to $x$ be able to atain any real value we need $h\neq 0$) and
$$ \min_x ~ (\lambda^2-1)\lambda'\langle b,b\rangle^2 + 2\lambda \lambda' \langle b,b\rangle x + x^2 = (\lambda^2-1)(\lambda')^2\langle b,b\rangle^2 - (\lambda \lambda' \langle b,b\rangle)^2 = -(\lambda' \langle b,b\rangle)^2 .$$
So, if $h\neq 0$ we can find $v = \lambda'b + h$ such that $f(v)<0$.
But $h \neq 0$ if $a,b$ are linearly independent.
Now assume $a = \lambda b$, so $B-A = (1-\lambda^2)B$ and it is p.s.d. if only if $1-\lambda^2 \geq 0 \Leftrightarrow |\lambda|\leq1$.
And so we are done.