I'm having the same problem now when hooking up the RPi 2 B device with UbuntuMATE 15.10.1 on a Medion flat panel HD1080p TV screen using a standard HDMI cable:
Black borders above and below, to the right and to the left and the OSD shows 720p@60Hz. The display settings of UbuntuMATE show a resolution of 1184x624 and a refresh rate of 0Hz.
Using "mate-control-center" I cannot change to any other screen resolution.
It seems that screen resolution is determined during the power on cycle of the RPi 2 B device only.
When using the "disable_overscan=1" option in "/boot/config.txt", it simply shows the desktop outside of the screen area, i.e. the top menu bar flows off the top screen, I cannot select any of the top bar menus and had to unplug power
Following the CONFIG.TXT documentation, I typed on the shell prompt the command
sudo /opt/vc/bin/tvservice -s
and am getting the following results
state 0x12000a [HDMI CEA (4) RGB lim 16:9], 1280x720 @ 60.00Hz, progressive
which lets me interpret that the correct supported resolution has been identified from my monitor.
Typing the command
sudo vcgencmd get_config int
yields to the following output
framebuffer_depth=32
framebuffer_ignore_alpha=1
framebuffer_swap=1
hdmi_drive=2
overscan_bottom=48
overscan_left=48
overscan_right=48
overscan_top=48
hdmi_force_cec_address=65535
lcd_framerate=60
pause_burst_frames=1
however not sure how these values are being determined, since not explicitly set in the "config.txt" file from my side.
I'm looking at the "/boot/edid.dat" hack described in a post of the Raspberry Pi forum when using the tvservice tool.