Booking early can save you upwards of 5% on your rental. Booking your vehicle at least 75 days in advance can get you a great below-average price for your desired location.
Typically, how long you can rent a car for depends on the inventory of the supplier. For Bali however, it is certainly possible to rent a car for an entire month.