2^63 isn't a weird cutoff for signed integers, it's exactly what it should be :)
Bigger than that, you're out of the range of the primitives that they coded into the language, or into most languages for that matter, so you're going to use to use some library construct to handle multi-word numbers. That's one of the few cases where operator overloading might help you, but frankly if your program is primarily doing high-end numerics, you should probably be coding in C which is much less friendly on all counts.
I don't actually prescribe Java for web dev, strong-typed languages are generally bad for web dev and the lack of type inference and some other syntactical shortcuts make Java even more of a pain for that type of stuff. It got a lot better with 1.5 on a couple of the niceties, but if what you're doing maps better to a scripting language, use a scripting language.
As far as the philosophy goes.. as I've worked on more projects in my life I've learned to distrust everything clever. Sometimes Java can be a bit too restricting, and Scala seems to be an unabashed improvement in terms of promoting better programming practice, but super clever things like monkey-patching and operator overloading for the sake of brevity can be very unpredictable when you need to fix a bug in someone else's code and do it quickly.