You probably need a new bootloader file to handle the differences internally in the processor. There are quite a few examples (eg. the Optiboot loader) which you could download and modify.
However you could explore other options...
First, do you really need 2 x 16-bit timers? Could one be pressed into service to do two things? Or could 8-bit resolution be enough? I did a sketch that output VGA signals using just a Uno, and timing had to be pretty precise.
Second, you don't need a bootloader. It just simplifies uploading things through the serial port, which the Uno has courtesy of the USB interface.
For example here:
This minimal board can be programmed using the ICSP header (labelled) using a device like the USBtinyISP, or indeed another Arduino Uno acting as a programmer.
The programming device is around $22, and can be shared between different projects.
You see, if you make up your own board, unless you muck around with a USB chip (itself likely to be surface mount) then you are going to need some sort of special cable anyway, like a FTDI cable, which also costs around $20. So you may as well go the ICSP programming route, and save worrying about the bootloader.