I don't think there's anything unusual about your situation. Have you ever had any formal musical theory lessons? People spend a lifetime trying to perfect their understanding of melody/harmony and that's those are focusing on it solely! (composers e.t.c.)
I would advise getting some musical theory books and spending the time to go through them properly. There's a series of 3 books by Michael Hewitt that are specifically written for computer music producers that begin wit hthe very basics, and eventually move up to extremely complicated musical concepts. There's also an article every month in Computer Music Magazine by RachMiel where he breaks down various concepts and explains how to apply them in a computer music production context; I find them extremely helpful.
The point is, if all you've been doing for the past three years is 'playing by ear' and sort of fumbling out your own feel for melody and harmony, you won't get any better past a certain point. There are certain relationships with tone in equal temperament that simply aren't discoverable from the notes alone; and have taken hundreds of years to discover and map out. Things like leitmotif, consonance and dissonance, how the scale degrees relate (which is an extremely detailed subject alone), cadence, reposition, and that is before we even enter the far more complex world of harmony.
Knowing these things allows you a mental map which you can use to
orient yourself towards a certain sound or feeling within your music, knowing things like
F Lydian sounds exotic or
Whole tone scales sound magical, really are the foundation upon which you can explore music in a structured manner, following certain guide lines wherein you can find which combinations of which things sound pleasing, to you. Though you cannot hope to get there if you don't even understand the nature of the landscape you are attempting to paint.
Until you have certain fundamentals under your belt, know a few scales by heart, can change key in a pleasing manner (and understand 'why' that works), understand how to build different scales from a key note by using a given scales tonal formula and have at least a rudimentary understanding of how different keys and scales relate to each other (circle of fifths for example); this is what you should be focusing on learning. The information is out there, Michael Hewitt's series is in my opinion by far the best option for you. I have done everything I've listed here so I'm speaking from experience, I once knew nothing about musical theory but now I know more than enough to play around in hours of enjoyment, just exploring how different concepts relate musically. It's one things knowing it theoretically, the fun begins when you can apply that practically and feel the joy of creating music with a true sense of feeling.
It's not something you can master over night, see it as something much bigger than something you can ever fully achieve, see it as more of an area of reality, an abstract space, that you journey in to from time to time attempting to catch a recipe for expressing something meaningful to you.
I hope this helped.

Good luck
edit: Read some of my old posts:
1 2 3 4 Lastly This
huge one
There's more, search my name and 'musical theory' or something.