Copy and paste the following code into the "Label Expression" box in a layer's Properties > Labels tab. Be sure to check the 'Advanced' box as well. In the last part of the code (the FindLabel function), substitute your field for [TOWN].
Function ProperCase(sString)
Dim lTemp
Dim sTemp, sTemp2
Dim x
sString = LCase(sString)
if Len(sString) Then
sTemp = Split(sString, " ")
lTemp = UBound(sTemp)
For x = 0 To lTemp
sTemp2 = sTemp2 & UCase(Left(sTemp(x), 1)) & Mid(sTemp(x), 2) & " "
Next
ProperCase = trim(sTemp2)
Else
ProperCase = sString
End if
End function
Function FindLabel ( [TOWN] )
FindLabel = ProperCase([TOWN])
End Function