Domestic Disturbance
(2001)

Susan (Teri Polo) comes to realize Rick (Vince Vaughn) -whose real name happened to be Jack Parnell- is indeed a dangerous criminal and that he tried to kill Frank (John Travolta) by setting the boathouse on fire -from which, of course, Frank managed to escape-.  Both she and her son Danny (Matt O'Leary) try to flee the house, but Rick catches up with them upon learning that Frank is trying to contact Susan and Danny, knocks Susan out and takes Danny hostage.

Frank arrives and a huge brawl breaks out; when it seems Rick will beat Frank to death with a crowbar, Danny reacts, crawls out of the car where he was tied and tackles Rick into a broken fusebox, electrocuting him to death, thanks to the crowbar he was holding.

Susan loses the baby she was waiting from Rick, but is safe; she, Frank and Danny survives, and even Sgt. Stevens (Ruben Santiago-Hudson), who arrested Danny recurrently throughout the movie, apologizes to the boy because he told the truth this time around.
 

Thanks Julio!