Yes, you can give the fish as one single meal. Of course it is still balanced. Or at least, it's just as balanced as if you choose to have a salad for lunch one day a week. It is not every single meal that requires "balance", but balance over time that is important. So it matters not one iota whether you choose to replace a kibble meal with fish, or whether you choose to add a spoonful of fish each day.
I think you could say that one can of fish (thinking roughly 450 gram size) per week or fortnight is plenty. It is irrelevant whether that's a single meal, or if it's spread out amongst several meals. The time frame is small enough that it will still constitute a balanced diet.
As for whether it's better than giving oil - yes, generally, I think it is. Bioavailability of nutrients is almost always highest when food is in natural form
OK - canned fish is technically cooked. But I still think it is better than a supplement. Unless, of course, your dog happens not to like it and won't eat it. In that instance, giving oil as a supplement would be the better option.