I can sing very well, but the problem I have is that I can't sing along with a beat. I am either too fast or too slow, what can I do please?
What I would suggest is to study the rhythmic part of the song. Practice the values of the melody rather than the melody as a whole, along with a metronome or some instrument. After you see that you can sing the rhythmic part correctly, sing the melody as a whole, again with a metronome or something. Then try singing it with your band.
One technique that I've learned from an experienced vocal coach is to use a recording or a backing track and just try to speak (instead of sing) the lyrics in the correct rhythm. In this way you only concentrate on the rhythmic element and you totally ignore the melody for the moment. Only after getting that part right should you try to combine the rhythm with the melody.
You may want to think about what songs you are attempting to play. As a lyricist and a poet, I find it very interesting that, in a poem, you are stripped bare of any rhythm/tempo except that which is in the accent on words themselves. In music, you can sort of force the words into the rhythm of the music. So, you may be attempting songs that are just difficult to find the rhythm of the song. It may benefit to find songs, initially, that are a pretty straightforward match between rhythm and wording.
As a more detailed example, in poetry, iambic pentameter requires that every other syllable is stressed. In music, you can force a syllable to be stressed, even though the stress is not natural.