Assume that both $A$ and $\dot B:=B\setminus\{0\}$ are nonempty. Then $$\dot BA=\bigcup_{b\in\dot B} b\>A$$
is a union of scaled copies of $A$, whence open. If $0\notin B$ then $\dot B=B$, and we are done. If $0\in B\cap A$ then $BA=\dot BA\cup\{0\}=\dot BA$ as well.
There remains the case that $0\in B\setminus A$. Here finer distinctions are necessary: If $A=\ ]0,1[\ $ and $B=[0,1[\ $ then $BA$ is not open. On the other hand, consider the example $A:=\ ]1,2[\ $, $B:=[{-1},1]$. Then $\dot BA=\ ]{-2},0[\ \cup\>]0,2[\ $, and $BA=\ ]{-2},2[$ is open as well.
(Edit: The following conjecture is wrong; see the counterexample by Milo Brandt.)
This leads to the following conjecture concerning the case $0\in B\setminus A$: The set $BA$ is open iff for any $\epsilon>0$ there exist numbers $x$, $x'\in A$ and $y$, $y'\in B$ such that
$$-\epsilon<x'y'<0<xy<\epsilon\ .$$