Why don't labile protons such as -OH and -NH have a characteristic chemical shift?
Many $\ce{-OH}$ and $\ce{-NH2}$ protons do have characteristic shifts.  However, their characteristic ranges tend to be much broader than those of $\ce{C-H}$ protons.

For example alcohol chemical shifts ($\delta$) range from roughly 1-5 ppm  while pheonlics range from 4-8ppm and carboxylic acid protons are from 10-13 ppm or so.  The ranges are 3-5 ppm in width, while similar ranges for $\ce{C-H}$ are 1-2ppm in width.  Amines and amides are somewhat in between these two in terms of width of the ranges.  So, saying they are not characteristic is an unhelpful description of the actual situation.

The next (implied) question is why would the ranges be broader for these groups?

Chemical shift is a measure of electron density near the proton being measured.  The magnetic moment of electrons 'shields' the proton from the external magnet, changing the amount of energy require for the quantum mechanical transition of nucleus aligned with field versus opposed.  Normally, we consider electron density to be a reflection of the bonding arrangements.  However, for  $\ce{-OH}$ and $\ce{-NH2}$ protons, hydrogen bonding is common.  As such, often times nearby functional groups or NMR solvent are also contributing electron density, increasing the variability of the observe chemical shift from case to case.

Finally, in some cases the hydrogen bonding is dynamically changing slowly compared to the NMR time scale.  In this cases you will observe very broad peaks.  For example, water in $\ce{DMSO-d6}$ (a high-viscosity solvent) occurs around 3.3ppm.  In very old bottles of the solvent (with lots of atmospherically absorbed water), I have observed this peak as much as 1.5 ppm wide baseline to baseline, always with a peak at 3.3ppm.  However, in $\ce{CDCl3}$ water tends to have a pretty sharp peak at 1.5ppm (presumably because of limited water solubility).