Take a look to the property 3: it states take every element has a left or a right inverse, while in your definition every element must have a two-sided inverse.
In general, in a (non-commutative, of course) monoid, if an element has a right inverse, this is not also its left inverse (see In a non-commutative monoid, is the left inverse of an element also the right inverse?), but in you case it is different, as every element has a left or a right inverse (some a right inverse, some a left inverse).
Just for fun: the following listing can be used in SPASS (a theorem prover) to prove that actually properties $1-3$ imply that every element has a two-sided inverse.
begin_problem(monoid).
list_of_descriptions.
name({}).
author({}).
status(unsatisfiable).
description({**}).
end_of_list.
list_of_symbols.
functions[(b,0), (P,2)].
end_of_list.
list_of_formulae(axioms).
formula(forall([x],equal(P(x,b),x))).
formula(forall([x],equal(P(b,x),x))).
formula(forall([x],forall ([y],forall([z],equal(P(P(x,y),z),P(x,P(y,z))))))).
formula(forall([x],exists([y],or(equal(P(x,y),b),equal(P(y,x),b))))).
end_of_list.
list_of_formulae(conjectures).
formula(forall([x],exists([y],and(equal(P(x,y),b),equal(P(y,x),b))))).
end_of_list.
end_problem.
Now, let's try to solve your problem.
Let $a\in G$ and suppose $a$ is right-invertible, i.e., exists $a'\in G$ such that $aa'=u$. Clearly, $aa'$ is left- and right-invertible, now, let us consider $a'a$. From $3$, $a'a$ is either left- or right-invertible. So suppose $a'a$ right-invertible, and let $b_l$ and $b_r$ a left and a right inverse of $aa'$ and $a'a$, respectively. Then
$$
u=b_l(aa')=(b_l a)a'
$$
and
$$
u=(a'a)b_r=a'(ab_r)
$$
so $a'$ has both left (i.e., $b_l a$) and right (i.e., $ab_r$) inverse, and then it is invertible (this is a standard fact in a monoid) and $b_l a=ab_r$. Clearly, if $a'a$ is actually left-invertible, the argument is similar. Now, back to $a$.
From above, we have
$$
u=(b_l a)a'=(ab_r)a'=a(b_r a')
$$
and
$$
u=a'(ab_r)=a'(b_l a)=(a' b_l) a
$$
and then also $a$ has both left (i.e., $a'b_l$) and right (i.e., $b_r a'$) inverse, and then it is (two-sided) invertible. As $a$ is generic, we have proved that $G$ is a group (of course, you have to work by yourself the case in which $a'a$ is left-invertible).