You could use a gui with just the background image being the inventory item and use
DisplaySpeechAt (int x, int y, int width, CHARID, string message)
or
I just tested this way, have a GUI with a button at the top, which you change the image to the inventory item, add a gui label below the image in the alignment that you want and put the description there.
don't click the "text window" option box, set it to script only, set the foreground and background to 0 and it works as far as I can see.