The first thing I would do is to reduce to abelian $p$-groups: If $A = G_1 \times \cdots \times G_r$ where each $G_i$ is a $p_i$-Sylow subgroup of $A$, then every subgroup $B$ of $A$ is a product of subgroups $B_i$ of $G_i$'s. (in fact $B_i$ will be the $p_i$-Sylow subgroup of $B$.)
So assume $A$ is an abelian $p$-group, say $A=\prod_{i=1}^k (\mathbb{Z}/p^{e_i} \mathbb{Z})^{r_i}$. In this case, clearly every $i$ can contributes up to $r_i$ direct factors of order dividing $p^{e_i}$. I think it is straightforward, although tedious, to show that no other subgroups can occur. (I haven't wrote the details, so one have to check...)
So I think the answer to your question is: YES
We'll induct on the number of distinct prime factors in the group's order. As you've said, the base case is pretty easy. Now, suppose the statement has been proven for all abelian groups, $H$, such that $|H|$ has $n$ distinct prime factors.
Let $G$, then, be an abelian group with $n+1$ distinct prime factors. This means that we can factor $|G|$ as $p^kj$ where $p^k$ and $j$ are coprime, and $j$ has $n$ distinct prime factors. Let $P$ be the set of all elements in $G$ whose order divides $p^k$ and let $J$ be the set of all elements in $G$ whose order divides $j$.
It is easy to see that both $P$ and $J$ are subgroups of $G$. It is also easy to see, by Cauchy's theorem, that $|P|$ and $|J|$ must be coprime. This will be important later.
First, each element in $G$ can be expressed as a sum of an element in $P$ and element in $J$. This is relatively easy to show. For any element, $x\in G$, we have $|G|\cdot x=0$, i.e. $(p^kj)\cdot x=0$. But this can be rewritten in a couple of ways- we can write it as $j\cdot (p^k\cdot x)=0$ which gives us that $\operatorname{ord}(p^k\cdot x)|j$.
Similarly, $\operatorname{ord}(j\cdot x)|p^k$. So, by the definitions of $P$ and $J$, for any $x\in G$, $p^k\cdot x\in J$ and $j\cdot x\in P$.
But, since $p^k$ and $j$ are coprime we can pick $a$ and $b$ so that $ap^k+bj=1$, which means $a\cdot(p^k\cdot x)+b\cdot(j\cdot x)=(ap^k)\cdot x+(bj)\cdot x=(ap^k+bj)\cdot x=1\cdot x=x$.
By what we have already shown, $a\cdot(p^k\cdot x)\in J$ and $b\cdot(j\cdot x)\in P$, so each $x\in G$ can be written as the combination of an element in $P$ and an element in $J$.
Also, since the order of any element in $P$ is coprime to the order of any non-zero element in $J$ (by the definitions of $P$ and $J$), we have $P\cap J=\{0\}$.
This finally gives us $G=P\oplus J$. Given that: $|P|$ and $|J|$ are coprime, $|P|=p^s$ for some $s$ (by Cauchy's theorem), and that $|G|=|P||J|$ (because $G$ is the direct sum of $P$ and $J$), we have $|P|=p^k$ and $|J|=j$. Now, we can apply the induction hypothesis on $J$ to expand it as a direct sum of groups of prime order in distinct primes, and, with $G=P\oplus J$, we are done.
Best Answer
Yes, the decomposition is unique for finite groups. This is a consequence of the Remak-Krull-Schmidt Theorem, which applies to groups that satisfy both the minimum and maximum conditions on normal subgroups. Since finite groups certainly have these properties, R-K-S applies here.