Yes, Bale is the better actor. Don't know if you've seen the new Batman but his acting is intelligent, funny, nuanced. He looks like he's having a good time when he acts. Cruise always seems so desperate to be liked. Bale acts like he doesn't give a damn whether he's world famous - and that in my opinion is what makes him so appealing.
Why it doesn't work. (1) The cliched dysfunctional family: egotistical father, rebellious annoying son (see "The Day After Tomorrow"), (2) No story, peripheral "War", just repetitive hiding from aliens with Dakota Fanning screaming a lot, (3)Tim Robbins' character: One moment he says, "They've been planning this for a million years! This isn't a war! It's an extermination!" The next moment he says, ""We're the resistance! We can kill them!" (4)The ending. In both the Wells book and 1953 classic, the Martians' world is dying and they pick Earth as their best hope for repopulation, so their demise by bacteria is plausible and unexpected. In this version they'd been "planning this for a million years" with their war machines buried here forever, so you'd think they would have figured out that annoying microbe problem. (5) Tom Cruise is a one-note lightweight.