I'm not sure what you are referring to by "common sense" assumption. A common assumptions one would make with this problems is that the person age is within a certain range, say more than 0 and less than 100. Even without that assumption we can solve it. I think the only assumption we have to make is that his birth year was greater or equal to zero.
So let his birth year be $1000a+100b+100c+d$ with $0\leq a,b,c,d\leq9$ and $a,b,c,d\in\mathbb{Z}$. Hence:
$1000a+100b+10c+d+a+b+c+d=1887$
$1001a+101b+11c+2d=1887$
As $1001\times0+101\times9+11\times9+2\times9<1997$ then $a>0$.
As $1001\times2+101\times0+11\times0+2\times0>1997$ then $a<2$, hence $a=1$.
So $101b+11c+2d=886$
As $101\times7+11\times9+2\times<886$ then $b>7$.
As $101\times9+11\times0+2\times0>886$ then $b<9$, hence $b=8$.
So $11c+2d=78$
As $11\times5+2\times9<78$ then $c>5$.
As $11\times8+2\times0>78$ then $c<8$.
If $c=7$ then we require $11\times7+2\times d=78$ which gives $d=\frac{1}{2}$ which isn't allowed as $d$ is an integer.
So $c=6$ and hence $2d=12$ and hence $d=6$.
So the man was born in $1866$ and is $21$ years old.
Update: Even if we let him be born in BCE times (and represent this by a negative value for $a$) then above rational still works.