The Friis transmission equation is usually a good start. In dB form, the loss of power between isotropic transmit and receive antennas in free space is: -
Loss (dB) = 32.45 + 20\$log_{10}\$(f) + 20\$log_{10}\$(d)
Where f is in MHz and d is in kilometres. This equation tells you how many dB of power loss you can expect at a given distance with a given carrier frequency.
At 433MHz and 2km the loss is 32.45 dB + 52.7 dB + 6.02 dB = 91.2 dB.
But this is in free space (the perfect environment) and in a town you could easily add another 40dB to the losses taking you to about 131 dB of losses.
What does the receiver need?
The receiver power required (at ambient temeperatures) is -154 dBm + 10\$log_{10}\$(Data Rate) dBm.
This is generally accepted as a good rule of thumb for decent BERs. So if your data-rate is 100 bits per second, the receiver sensitivity needs to be -134 dBm.
Given that your transmission loss is going to be about 131 dB, you can estimate your transmit power as -3 dBm. That's 0.5 mW in real numbers to stand reasonable success of delivering 100 bits per second across 2 km of town-like environment.
If you use dipole antennas you get about 1.7 dB of gain because, unlike the theoretical isotropic antenna (that transmits power equally in all directions), the dipole only transmits perpendicular to the rise of the antenna. Clearly more power is therefore emitted in this direction so you can use the concept of antenna gain to improve the transmission.
Am I using the right frequency or there are other options?
Lower is better in terms of free space (examine the formula) but around town I wouldn't go lower than 80 MHz because penetration between and around buildings can be problematic - think of 1 MHz AM radio as you drive into a tunnel - it dies straight away whereas the standard FM band of about 100 MHz gets much further - it's a wavelength thing. The bigger wavelength doesn't fit down the hole so easily!
How big will the transmitter antenna be if all the above are
achievable?
Use a quarter wave dipole - length at 300 MHz is 25cm. At 433 MHz it's about 17 cm. Lower frequencies require proportionally longer antennas.
The big problem with what you are trying to achieve is that every man and his dog will likely be using 433 MHz and across a distance of 2 km this can cause a mega-serious interference so, I'd immediately want to improve my transmission chances by boosting the output power by 30 dB (that would be about 500 mW of output power) or using directional antennas like yagis.
I think you have enough info in this answer to start figuring stuff out now.