Here are my thoughts:
[name_m]Calvin[/name_m] — [name_u]Love[/name_u] this name, especially as a brother to [name_u]Bennett[/name_u]. Viv1an and [name_m]Calvin[/name_m] are a bit similar, but this wouldn’t be a dealbreaker for me if [name_m]Calvin[/name_m] was the frontrunner. The similarities are tempered by having Benn3tt in between them. Viv1an, Ben3tt, and [name_m]Calvin[/name_m] sound lovely as a string!
[name_u]Davis[/name_u] — So handsome! But I agree with the other commenters that it will get mistaken for [name_u]David[/name_u], at least sometimes. It’s an easy correction, but if you’re not used to it with your other children’s names, it’s something you may find very irritating. I’d be less worried about the nickname [name_m]Dave[/name_m] — it may come up at times (mainly with peers, I’d guess), but chances are he’d go by [name_u]Davis[/name_u] if that’s the precedent you set at home.
[name_u]Griffin[/name_u] — [name_u]Griffin[/name_u] doesn’t feel overly hard or masculine to my ears but I can see how you would feel that way. Not a fan of [name_m]Griff[/name_m] either, but unfortunately that’s the obvious nickname. If you intend for him to go by [name_u]Griffin[/name_u], people will default to [name_m]Griff[/name_m] rather than [name_u]Finn[/name_u]. Probably even if you called him [name_u]Finn[/name_u] yourself. It could work if you named him [name_u]Griffin[/name_u] and exclusively called him [name_u]Finn[/name_u], but at that point you might as well put [name_u]Finn[/name_u] on the birth certificate.
[name_m]Hugo[/name_m] — Such a great name! Fits perfectly with Viv1an and Ben3tt. It’s straightforward and easy to spell like both sibling names, which seems like an advantage for you. Definitely not too [name_u]French[/name_u].
[name_f]My[/name_f] ranking for you:
[name_m]Hugo[/name_m]
[name_u]Davis[/name_u]
[name_m]Calvin[/name_m]
[name_u]Griffin[/name_u]