Monoids in which every prime is an atom Let $H$ be a multiplicatively written monoid with identity $1_H$. We write $H^\times$ for the set of units (or invertible elements) of $H$. We say that an element $a \in H$ is an atom if $a \notin H^\times$ and there do not exist $x, y \in H \setminus H^\times$ such that $a = xy$, and a prime if $a \notin H^\times$ and $a \mid_H xy$ implies $a \mid_H x$ or $a \mid_H y$. Here, $\mid_H$ is the divisibility preorder on $H$ (that is, $x \mid_H y$ iff $y \in HxH$).

Q. What is known about the class, $\mathcal M_{\sf p}$, of monoids for which every prime is an atom? Have they ever been studied? Do they have a special name?

It is seen that $\mathcal M_{\sf p}$ includes all commutative, unit-cancellative monoids ($H$ is unit-cancellative if $xy = x$ or $yx=x$ for some $x, y \in H$ implies $y \in H^\times$), while a free monoid with basis a set containing at least two elements is a non-commutative, cancellative example. 
As for a non-example, it is enough to consider the case when $H$ is a non-trivial monoid with an absorbing element $0_H$, but no zero divisors (e.g., the multiplicative monoid of a domain): Here, $0_H = 0_H \cdot 0_H$ and $0_H \notin H^\times$, so $0_H$ is neither a unit nor an atom. However, $0_H$ is a prime, because $0_H \mid_H xy$, for some $x, y \in H$, only if $x = 0_H$ or $y = 0_H$.
 A: Fact 1: If $M$ is a monoid where primes are atoms, then $M$ is Dedekind-finite.
Proof. Working contrapositively, assume $ab=1$ with $a,b\in M\setminus M^{\times}$.  Now $a$ is prime since it divides every element $x\in M$ (because $x=xab$).  On the other hand $a=a(ba)$ is a product of two non-units [if $ba\in M^{\times}$ then $a$ is left invertible, and $ab=1$ implies it is right invertible, a contradiction], so $a$ is not an atom. $\boxed{\,}$
Fact 2: If $M$ is a monoid satifying
$$
(\dagger)\qquad \forall r,s,t\in M,\ (rst=s)\implies r,t\in M^{\times},
$$
then primes are atoms.
Proof. Assume contrapositively $p\in M$ is prime but not an atom.  If $M$ is not Dedekind-finite, then $(\dagger)$ fails, and we are done.  So we hereafter assume $M$ is Dedekind-finite.
Since $p$ is not an atom write $p=xy$ with $x,y\in M\setminus M^{\times}$.  As $p|xy$, without loss of generality we may assume $p|x$.  Thus $x=apb$ for some $a,b\in M$, and we then have $p=ap(by)$.  As $y$ is not a unit, Dedekind-finiteness implies $by\notin M^{\times}$. Taking $r=a$, $s=p$, and $t=by$ shows that $(\dagger)$ fails. $\boxed{\,}$
Note that this class (the $(\dagger)$ monoids) encompasses both the commutative, unit-cancellative monoids, and the free monoids.
A: This should actually be a comment, but it's too long for that, so I'm posting it as an answer.

Pace Nielsen proved in this thread that, if $H \in \mathcal M_{\sf p}$ (the class of all monoids with the property that every prime is an atom, as specified in the OP), then $H$ is Dedekind-finite (i.e., $xy = 1_H$, for some $x, y \in H$, only if $yx = 1_H$). Moreover, he observed that every monoid $H$ such that $xyz=y$, for some $x,y,z \in H$, implies $x, z \in H^\times$ (condition ($\dagger$) in his answer), belongs to $\mathcal M_{\sf p}$. In a comment, I asked, as an obvious follow-up, if the converse of this latter fact is true, and I've just realized that the answer is no.
Indeed, let $X$ be a set with $|X| \ge 3$, pick two distinct elements $0_X$ and $1_X$ in $X$, and define a multiplication $\ast$ on $X$ by taking, for all $x \in X$ and $y, z \in X \setminus \{1_X\}$, $x \ast 1_X :=1_X \ast x := x$ and $y\ast z:= 0_X$. Then $H=(X,\ast)$ is a reduced, commutative monoid with zero ("reduced" means that the only unit is the identity), where $1_X$ is the identity and $0_X$ the absorbing element. 
Clearly, $0_X$ is not an atom of $H$, because $0_X \ast 0_X = 0_X \ne 1_X$. Moreover, if $a \in X \setminus \{1_X, 0_X\}$ and $a = x \ast y$ for some $x, y \in X$, then one of $x$ and $y$ must be equal to $1_X$, otherwise $x \ast y = 0_X \ne a$. Therefore, the set of atoms of $H$ is given by $X \setminus \{1_X, 0_X\}$.
On the other hand, $0_X$ is not a prime of $H$, because having assumed $|X| \ge 3$ yields the existence of an element $x \in X \setminus \{0_X\}$ with $x \ast x = 0_X$, so that $0_X \mid x \ast x$, yet $0_X \nmid x$. Therefore, the primes of $H$, if any, are necessarily contained in $H \setminus \{1_X, 0_X\}$, that is, are atoms. 
Finally, it is clear that $H$ doesn't satisfy condition ($\dagger$), because $x \ast 0_X \ast y = 0_X$ for all $x, y \in X$.
