I think you misunderstand the linear algebra here.
A_43 = reshape(A,length(B),)
Is that matrix a full rank matrix? No.
If you now try to use a tool like pinv to effectively solve a system of equations, then you need to recognize the solution is not unique. So this now:
Yes, you think that it should be able to find the solution [1;0;0]. And it is true that
does return B. But since that matrix is not full rank, there are infintiely many possible solutions. The solution that pinv does find is one where the result has minimum norm over all possible solutions.
Hoping to use a version of pinv that applies separately to every column of a matrix separately is NOT the solution. Understanding linear algebra is the solution. Sorry, but it is.
The total set of solutions to the general problem for this rank 2 matrix will be of the form:
allsols = pinv(A_43)*B + t*null(A_43)
And we can see that when t = 1/sqrt(6), this will yield the solution you think should be the correct one.
But there are infintely many possible solutions. Note that \ does find the solution you think to be the correct one, but that is slightly fortuitous. And \ does complain about the singular matrix.