When you say his recall is fine at home, do you mean in the garden or in the house?
Most dogs will be fine in such bland envionments with no distractions. The obvious goal -- and the real meaning of 'recall' -- is to be very sure your dog will come back to you despite distractions in the real world.
Just as an aside, 7 months is only a young puppy -- way, way, way too young to expect recall. Most dogs can really only begin to focus on something like recall starting around 6 months and you might spend many months working towards a point where you would know your dog would always return when off lead in a safe area (meaning no traffic nearby).
Obviously there are huge safety implications to recall -- making it the single most important thing you teach your dog. That's one reason why this is really the kind of thing best worked on in a rewards based, well taught obedience class. Most dogs (and their owners!) need the structure of being able to do other, simpler things in obedience before they can move towards increasing reliability at recall. Recall is always taught in a safe environment -- so a home is a good place to begin on your own -- but obviously is not the environment you really want your dog to return to you in. Hence you need to go train where there are more distractions.
An obedience class again is ideal as the location is (or should be!) protected and safe, but there are lots of distractions -- other people, other dogs, and noise. This is why a class is so valuable -- your dog will learn to do all sorts of things *despite* distractions and these build up the dog's ability to concentrate and your ability to train with confidence too, despite distractions.
Outside of a class, you should be working with the dog in a safe park area well away from traffic, with the dog always on a long line (you can use a flexilead for some early practice but the lines aren;t very long and they aren;t particularly safe -- the handles can pop out of your hand very easily and most trainers advise they be used with caution and never near traffic). Many pet shops sell long lines or sometimes people use the ones used for training horses. Something like a 50 foot line that clips to the dog's collar is good. You allow the dog to wander away, recall and reward/praise, over and over and over. If the dog ignores you, you can reel the dog in gently and reward so that -- as is always important -- the dog NEVER has the opportunity to hear a command and ignore it. A dog under 1 does not have great concentration (another reason a young dog will not be reliable on recall -- they just forget, or easily get distracted, much like teaching kids!) so training sessions shouldn't be longer than about 15 minutes.
The advantage of a long line is you can take your dog to areas where there are more distractions as he becomes more reliable -- near other dogs, or children playing, or people walking.
A dog of any breed should never be off lead near traffic unless you want to run the risk of death -- even the most well trained obedient dog has a very hard time controlling chase behaviour if a cat runs across the road, it sees an interesting dog across the road, or scents something -- eg a female in heat, something to eat, something really smelly and interesting -- it wants to reach.
IMHO people who walk cavaliers off lead near traffic are running ridiculous risks. I see them all the time and know from experience that this is one breed that is particularly poor at dealing with traffic as unlike some others they do not even seem to have a basic fear of oncoming cars. This is actually *bred into them* -- the breed description for all CKCS clubs worldwide describes them as 'fearless'. Not good when they are facing three tons of steel at high speed.