For Q1, you have to be careful with operators and with notation in general. Don't ever let notation and symbology replace a mathematical proof. In general, the order of operators matter. For example, in matrix multiplications AB does not equal BA, in general. So, I don't think there is equality in this case, however, you are free to write it out and prove it for yourself. Remember that (A.grad)B is telling you to evaluate inside the parentheses first. This is important so that you end up with a vector, not a scalar. Also, since the order of operators matters, be careful and make sure the components of the A vector are in front of the partial derivatives from the gradient.
For Q2, remember that I mentioned before that the laplacian operator applied to a vector is a completely different animal than that applied to a scalar. So, your second method is correct. In rectangular coordinates ONLY, the laplacian of a vector equals the vector formed by the laplacian of each of the components, such that Laplacian(A)=i Laplacian(Ax) + j Laplacian(Ay) +k Laplacian (Az), which matches your second method. However, do not apply this in cylindrical or spherical coordinates. The form of the Laplacian of a vector should be looked up in those cases.