#1
I've been playing for 3 yrs, I don't think to this day I've learned a whole song and perfected it, although I know parts of many. I can't sing and play. I am best at improvisation...thats almost all I do. I tend to use a lot of major/minor, pentatonic, and blues. Lots of blues ....

I haven't had the opportunity to play with a lot of people...so I was wondering.

Is it common to be able to improvise with just about anything. I don't need to know the key and I can play lead on top of anything within my first couple notes. I jam without scales and just guess my way....I will use a little theory in my choice of notes but it mostly just comes out. I never met anyone that could play lead anywhere on the neck with almost any song they heard unless they were very experienced.
#2
Well, if you haven't taken the time in 3 years to learn/perfect a complete song and spend a lot of your time improvising then I wouldn't be surprised by this.

If someone spends their practice time predominantly on one skill (improvising for example) then you get familiar with what sounds good and can do it easier than some of your contemporaries. Improvising is not one of my strength because I spend more time working on my singing/playing complete songs which is a skill I have over some of the people I know and play with.

It's all in how you divide your time I guess.
#3
You can ask that question in the Instruments section, pick a sub-forum suitable for your question and post it there for a lot more responses and help
I put a dollar in a change machine. Nothing changed.