Elizabeth knights old boy, long having earned top honour (7)
I believe the answer is:
ennoble
'honour' is the definition.
(ennobling is a kind of honouring)
'elizabeth knights old boy long having earned top' is the wordplay.
'elizabeth knights' becomes 'enn' (I am not sure about this - if you are sure you should give a lot more credence to this answer).
'old boy' becomes 'ob' (abbreviation).
'long' becomes 'l'.
'having' is a charade indicator (letters next to each other).
'top' suggests taking the first letters.
The first letter of 'earned' is 'e'.
'enn'+'ob'+'l'+'e'='ENNOBLE'
(Other definitions for ennoble that I've seen before include "Bestow high rank upon" , "Glorify - confer honour upon" , "Raise to the knighthood or make more dignified" , "Kick upstairs" , "Elevate in rank" .)