Heh, heh, heh. This brings me back. Back, way back, in the Win3.1 days there was a package out there that was exactly what you're looking for. It was called PCTools and had a hex-editor that could directly edit the partition table (as well as the master boot record). If you had a misaligned partition for some reason, you could fix it in a way that DOS FDISK never could. Helped me fix a few things. It's fallen off the back of google, though.
These days there are a couple of Linux fdisk programs that allow you to set partition limits on a sector by sector basis. Dangerous, for a reason, but they're there.
This is brain surgery. You can really screw things up if you do it wrong.
That out of the way...
Find yourself a USB-Linux or DVD-Linux of your choice, they all should have what you're looking for. Get to a command line, root-mode if you're not already there, and start it up.
Set select U to change the units. p will print your partition table.
Device Boot Start End Blocks Id System
/dev/sda1 * 63 144584 72261 83 Linux
/dev/sda2 144585 415424834 207640125 8e Linux LVM
side-note: If I had a solid-state-drive on this machine, /dev/sda1 would be misaligned. It should start on sector 64 not 63.
Note your partitions, write them down. Where they start, where they end, how many blocks they are, and what the partition ID is. You'll need each of these.
The easiest way is to remove the entire partition table and write a new one, with the parameters you need. If you do it right, it should come back.
The o command will write a new, blank, partition table. The n command will create a new one; select your partition type, where the partition will start, and where it will end (you wrote that down). Once that's done the t command will allow you change the partition type, since it'll default to Linux (83) and you probably don't want that. Use the code you wrote down.
Repeat for each partition you need. When done the w command will commit your work. You'll probably have to reboot to see if it works out.
The more advanced method is to just change the bad partition directly. This is a lot more work, and I'm unclear enough on the steps that I'm not going to write them down in case I lead you to bricking things.