At seven, your son is old enough for whatever level of Boy Scouting (not sure what it's called for his age group). He's old enough for a class at the local community center or recreation center in whatever he enjoys most -- they have everything from art to kid drama to sports to simple "create your own game" programming these days.
I'm saying: If he is spending SO much time with this cousin that they are this into each others' faces, it's time to get your son doing things with kids his own age and to spend less time with his cousin. Period.
You and your sister should be doing things together as adults. Let the dads (if both dads are in the picture) have their own boys (not both boys together!) on a weekend morning so you and sister can do something-- whatever you like, going for coffee, having breakfast out together, attending an exercise class or anything.
You and your sister have a relationship that does not HAVE to include your children. Certainly not as frequently as you seem to include them now. So stop. You can legitimately and honestly say to her, "Jimmy's in Scouts now and also is doing a class in X at the rec center on weekends with his dad -- it's great for them to do things just the two of them. So he can't make it this weekend to (fill in the blank--whatever she thinks the boys should do together.)." Then propose that you and she go do something "just us girls" style. You can keep your sister without letting your sons come between you. If she insists that the boys must interact or has some idea that they must be friends or playmates since they are cousins - keep your son busy and keep offering one on one adult outings.
Sometimes they will end up together but be sure that they have something besides each other to focus on and do. Here's what I mean: Instead of saying "Why don't you guys go play" which will not end well, take them to a movie (that is age-appropriate for both) so they are watching that, not messing with each other. Take them to events where they are focused on the event or activity, not each other. Put an adult between them when you sit together. Don't make a huge deal of it with your sister; just sit yourself down between the boys or call the boys' attention to something when they start to pick at each other.
Ten and seven can be very different ages in terms of interests, maturity, etc. A 10-year-old, especially one with a "he can do no wrong" parent, is going to be potentially much more "attitudinal" than a seven-year-old, hence the eye rolls and constant attempts to make your younger child feel and know he's the baby and cousin is the big kid.
They may be the best pals on earth in years to come but do not place them in the position now of being around each other unless there is a very specific thing to engage their attention.
I am not sure about the deal with your son's arm. If the cousin actually laid hands on your son and broke it, or shoved him and caused it, or dared him to do something dangerous -- that alone would end any visits with cousin for a long, long time to come. If this was a matter of a hit or a shove or a twist of the arm, why is cousin still around your son at all?
Or was this a case of shades of gray instead of black and white? The context and specific events do matter in that case. If your own son was goofing off or showing off or otherwise broke his own arm and cousin was there egging him on or being mean but did not lay hands on him or truly cause it -- well, that's a bit different, but still reason to keep them apart since they aren't good for each other.