1) wxDockIt's fault.
2) You can go to %CodeBlocks%/share/CodeBlocks/compiler_gcc.zip and in compiler_toolbar.xrc or compiler_toolbar_16x16.xrc modify
    <object class="wxComboBox" name="idToolTarget">
        <content/>
        <size>-1,-1</size>
        <style>wxCB_READONLY</style>
    </object>
to something more reasonable: 
    <object class="wxComboBox" name="idToolTarget">
        <content/>
        <size>100,-1</size>
        <style>wxCB_READONLY</style>
    </object>
I agree that the default is too wide.
3) This should be addressed. Submit a bug report/feature request.
4) This would requiere a real C++ parser.