VTE, responsible for doing the actual terminal emulation and displaying the result in GNOME Terminal, does indeed have a 1px (by default) padding.
For example, if you choose a font where character cells are 10×20 pixels, and have a terminal of the default 80×24 size, the overall size used for actual terminal emulation purposes won't be 800×480 pixels but rather 802×482.
This behavior is not uncommon at all in terminals. Reasons for the padding include to allow room for an outlined rectangle cursor around the cell (the rectangle being drawn around the cell rather than within makes the letter underneath more readable), to allow room for a tiny overflow of antialiased letters (which is more common than probably one would think, e.g. at the right edge of m, w letters), to allow a fullscreen VTE to know if the mouse has been dragged out of the regular cells area, and also to IMO look visually more pleasing.
The width of the padding can easily be configured (enlarged – I faced some geometry (resizing) problems if I set it to 0).
The color of this padding, however, is always the same as VTE's current default background color, it's not controlled by any GTK property (other than, well, VTE possibly taking the default background color from GTK).
Then, depending of the GTK theme, if you have multiple tabs opened in gnome-terminal then the notebook widget might display a border (although I believe it's uncommon these days), and then there comes whatever border the window manager might display (where again the trend nowadays is not to display a border).
The purpose of VTE's padding, or the purpose of the notebook widget's border (if any) is not to help you see the edges between different windows. This IMO belongs to the window manager. You should see how to configure your window manager to draw a border around windows, or to cast some light on the neighboring windows, or something along these lines – after all, presumably you also want to tell apart your browser windows displaying black webpages, etc.
To summarize: Don't try to solve it in the terminal, try to solve in a generic way that applies to all apps. Traditionally that would mean configuring your desktop environment / window manager / compositor. With GTK's new client side decoration (CSD) world, this might actually easily be a GTK configuration. Unfortunately I can't help you with this, but I hope my partial response was useful.