I hope the beer is still good! My first batch was a Belgian that was a bit too sweet. It still tasted good, but I learned a few lessons from it, definitely.
Although it's hard to say for sure without knowing your whole process, there are a few big possibilities for why your beer didn't quite get down to the final gravity you expected.
One possibility is related to the yeast. Did you make a starter? Pitching a single vial of yeast for a 5-gallon batch of 1.090 OG beer might result in incomplete fermentation. When your wort is strong, you need more yeast. Similarly, yeast needs oxygen to grow. Did you take any steps to aerate your cooled wort--for example, by shaking your fermentation vessel, or by stirring it vigorously with a blender, etc.? For some yeast, it's helpful to shake the fermenter a little after a week or two. This is called rousing the yeast, and it helps put the yeast back into the beer where it can continue to ferment. Finally, what temperature was the fermentation at? Some yeast needs a higher temperature to really finish fermenting; some Belgian strains are like this.
Another possibility is the recipe. Using extract will usually give you a higher percentage of unfermentable sugars than you'd get just using grain. That can leave you with a higher final gravity. You didn't have a huge percentage of crystal in there, but that can have the same effect. For a recipe of 1.090, I would also have advised a larger percentage of simple sugar or candy syrup. Simple sugars are fermented at a rate of almost 100%, so they can help increase the alcohol of a strong beer without leaving it sweet.
Those are just some starting points. If you tell us more, we might be able to help you more.