Well, if you play for long periods each day and know the pentatonic scale, you're definitly on the right track.
Important question is, is do you know how to apply the scale? The only way to learn this is to play over music and the easiest way to go about that is to just play some music in the background and fuck around on the instrument. Listen carefully to the music and search for notes on the instrument that sound good and try to figure out which notes are good and which sound shitty, then play the good ones. This does not seem like very thorough advice, but it is really the best I can give. Hmmm, maybe try playing only one string, that is kind of how I started improvising. Like, for example, lets say you play along to Comfortably Numb, the song is in B minor. Try just playing the B string and use frets 0, 3, 5, 7, 10, 12, and just fuck around and try to play melodies or whatnot. This should work pretty well, because the open string will be the root note.
When that gets boring, make it the minor scale and on the B use 0, 2, 3, 5, 7, 8, 10, 12. It doesn't matter how fast or accurate you play at this point, you just need to try play things that complement the music, and you only need one note for that.
Improvising on one string should be pretty helpful with or without music in the background. Perhaps you would enjoy the spanish-gypsy scale (a mode of harmonic minor) which would look like 0, 1, 4, 5, 7, 8, 10, 12.
Just don't be afraid to play things that don't sound and eventually you will start finding things that sound good.
Speed and accuracy will come with time, there really is no fun way to go about it besides playing excercises. Playing chromatically up and down the strings like 12, 11, 10, 9, 12, 11, 10, 9, 12, 11, 10, 9 (using a different finger for each fret) and challenging yourself to just play as fast as possible, and then faster, will probably be the best way to improve on that.
So... good luck. Let me know if this works out at all. Also, I owe you a picture of my guitar.
And learning by ear, that takes a lot of experience.