Stop your hens eating their own eggs by finding out which nest the offending hen uses. Take one or more of its eggs and 'blow' it.
Then fill it with a mixture of another egg plus pepper and carefully pour it back into the original 'blown' egg. Seal the end with wax to stop the contents ozzing out.
Put this egg into the nest where the offending chicken lays. When eaten it will put the hen off eating eggs for life.