SWITCH TO ALL GRAIN. Seriously your beers turn out way better. Extract brewing is too limiting.
Plenty of great beer both commercial in many more microbreweries than you want to probably acknowlege, and homebrew is made with extract. And plenty of extract recipes have won contests.
Being on here I have seen to many folks who think jumping right to AG is a magic bullet, that doing that means they are going to instantly make "better" beer then the "crap" they feel they made from extract. You know, when they didn't use a hydrometer, racked it to soon, and drank their first bottles 3 days after capping them. And they this end up starting "is my beer ruined threads?" where we STILL have to suggest they take a gravity reading or do some other piece of "homebrewing 101" basic stuff.
If your process sucks as an extract brewer, it's gonna suck making all grain, maybe even more so because there are so many more factors that come into play.
It's not the method that makes better beer,
It's the brewer that determines whether or not the beer he makes is crap or excellent.
I wrote a blog about it a couple years back.
http://blogs.homebrewtalk.com/Revvy/Why_cant_we_all_get_along/
The fact that the OP wants to learn why his beer has certain tastes prooves that he wants to be a great brewer.
Underpitching yeast (ergo not making a starter) not paying attention to temp control, not using a hydromter, and not leaving the beer long enough in primary to clean up after itself are all brewing skills that can improve ANY batch regardless of whether or not is is AG...and NOT doing so can make for sucky beer REGARDLESS of whether it is extract or AG.
I've choked down, and even made some damn awful AG batches, and enojoyed plenty of great extract batches, from other brewers and myself.