Another approach: One possible definition of a unitary operator is: U is said to be unitary if it's a normed space isomorphism (a linear bijective isometry) from H onto H. A linear isometry is obviously bounded. We can prove that a unitary operator defined this way satisfies \langle Ux,Uy\rangle for all x,y. This implies that U^*U=1. We can also prove that the set B(H) of bounded linear operators satisfy the definition of a C*-algebra. The norm of U then follows immediately from the C*-identity \|A\|^2=\|A^*A\|, which is satisfied by all members of B(H).
D'oh, for a moment I thought that this thread was about determining the norm of a unitary operator, but it's about proving that U*U=1. In this approach, the definition includes the condition \|Ux\|=\|x\| for all x. This clearly implies that \langle Ux,Ux\rangle=\langle x,x\rangle for all x. Now if we let y,z be arbitrary, and insert stuff like y+z and y-z into that result, we will see (after a little algebra) that \langle Ux,Uy\rangle=\langle x,y\rangle for all x,y.