Charles Nelson war ein Sohn von John E. Nelson (1874–1955), der zwischen 1921 und 1932 den Staat Maine im Kongress vertreten hatte. Der jüngere Nelson besuchte bis 1924 die Cony High School in Augusta und danach bis 1928 das Colby College in Waterville. Nach einem anschließenden Jurastudium an der Harvard University wurde er im Jahr 1931 als Rechtsanwalt zugelassen. In den Jahren 1931 und 1932 arbeitete er als Sekretär seines Vaters, der damals Kongressabgeordneter war. Danach praktizierte er als Anwalt in Augusta. Zwischen 1934 und 1942 war er juristischer Vertreter dieser Stadt.
Politisch war Nelson Mitglied der Republikanischen Partei. 1936 war er Delegierter zur Republican National Convention in Cleveland, auf der Alf Landon als Präsidentschaftskandidat nominiert wurde. In den Jahren 1941 und 1942 leitete Nelson die Feuerschutzbehörde des Staates Maine (State Arson Division). Zwischen 1942 und 1946 nahm er als Offizier im Fliegerkorps der US Army am Zweiten Weltkrieg teil. Er war in Europa eingesetzt und brachte es bis zu seinem Ausscheiden aus dem Militärdienst bis zum Oberstleutnant. Nach dem Krieg wurde er Mitglied der Reserve der Nationalgarde.
Von 1947 bis 1948 war Charles Nelson Bürgermeister von Augusta. Bei den Kongresswahlen des Jahres 1948 wurde er dann im zweiten Wahlbezirk von Maine in das US-Repräsentantenhaus in Washington, D.C. gewählt. Dort trat er am 3. Januar 1949 die Nachfolge von Margaret Chase Smith an. Nach drei Wiederwahlen konnte er bis zum 3. Januar 1957 vier Legislaturperioden im Kongress absolvieren. In diese Zeit fielen der Koreakrieg und der Beginn der Bürgerrechtsbewegung. 1951 wurde der 22. Verfassungszusatz verabschiedet, der die Regierungszeit des Präsidenten auf zwei Amtsperioden beschränkte. Im Jahr 1956 verzichtete Nelson auf eine weitere Kandidatur.
Zwischen 1957 und 1959 lehrte Nelson an der University of Florida in Gainesville. Außerdem arbeitete er als Strafverteidiger und war 1959 Mitglied des Autobahnausschusses. Charles Nelson starb am 8. Juni 1962 in Augusta.