I believe that what you say is true. I'll sketch an argument.
Let f:Zn ---> Z2n be the map of free Z-modules given by the matrices B1, B2 put in column (i.e. the direct sum of the morphisms given by B1 and B2). Now we rephrase conditions (1) and (2) in a slightly more abstract way:
(1) fails to hold if, and only if there exists p:Z2n ---> Zn such that, together with f, fit in a short exact sequence
0 ---> Zn ---> Z2n ---> Zn ---> 0 (*)
Indeed, the failure of (1) means that any v in Qn such f(v) in Z2n must be integral (i.e. v in Zn). In particular, this implies that f is injective. Moreover, take w in Z2n representing a nonzero torsion element in the cokernel of f. As w represents a torsion element, Nw belongs to the image of f for some big enough positive integer N, so there is v in Zn such that f(v) = Nw. But now f(1/N v) = w, and this means, by the failure of (1), that 1/N v is integral, so w is in the image of f and the cokernel of f has no torsion. As a finitely generated torsion-free Z-module is free, we get an exact sequence like (*) above. This argument can easily be reversed, to show the equivalence between the existence of this exact sequence and the failure of (1).
- (2) holds if, and only if there exists a morphism of Z-modules r:Z2n ----> Zn such that rf = id.
Let r be represented by a matrix (A1,A2). Then gf has matrix A1B1 + A2B2, and gf = id if, and only if (2) holds.
Now, the proof of what you asked for is easy. (1) fails if, and only if we can form the exact sequence (*), but such an exact sequence is always split because Z^n is projective, so we can form such exact sequence if, and only if there exists a splitting r:Z2n ----> Zn, which is exactly condition (2).