After 2 hours of tantrums, which included him throwing things, yelling, and hitting me, which he hasn't done in a year, I figured out that the real reason he was upset was because we had talked several hours prior about calling 911 if Mommy was hurt (he was the one who brought it up).
He couldn't verbalize that it upset him, so he just kept running around saying "Angry!" and punching things. He finally said something about me leaving, and that made me realize the cause. Then he spent the entire night having nightmares. : (
This video is towards the end of his tantruming, when he was done throwing things and I could actually talk to him. This is right before I figured out why he was angry. Once I figured it out, I had him cuddle with me and we talked about who he would want to live with if I was ever gone (Uncle Bill), but that Mommy wasn't going anywhere, that it was just in case of emergency, and Mommy was staying with him. I told him he would also always have Rylie, who would soon be old enough to play games with him, and he would keep her safe and she would keep him safe.
Like I said, this video is tame compared to the beginning of the tantrum, and might not even be considered a tantrum compared to what some "typical" kids can muster up when angry. But it does show that even after 2 hours of being angry, he still couldn't tell me why he was upset.