If one considers small "actions" or "raids" on communities as "battles", the answer is The July 18, 1864 raid on Calais, Washington County, Maine (45° 9′ 58″ N).
If by "battle" is meant combat between hundreds or more combatants, answer is the Battle of Salineville, Ohio (40° 37′ 24″ North).
Most sources, when answering this question, quickly change from "battle" to "action" or "raid". (One site, colors-newyork.com, actually uses the identical question, "What was the northernmost battle of the Civil War?" and answers "The St. Albans Raid was the northernmost land action of the American Civil War.")
Regardless, thereare four candidates:
1. The October 19, 1864 raid on Saint Albans, Vermont (44°, 48', 37" North). About 25 rebels entered the U. S. from Canada and attacked this rail center. They planned to rob three banks and set fire to the town but were foiled by townspeople and escaped after only robbing one bank. A local man, Elinus Morrison, was mortally wounded, and one of the rebels, Charles Higby was wounded but recovered. This incident is usually referred to as the "northernmost land action of the American Civil War".
Source: "Saint Albans Raid", Encyclopedia Britannica. https://www.britannica.com/event/Saint-Albans-Raid
2. The July 18, 1864 raid on Calais, Washington County, Maine (45° 9′ 58″ N), just north of Saint Albans. Rebels raised their flag, attempted to rob a bank, and planned to burn the town, but were captured by Main State Guards. The sole casualty was a civilian, Gilbert H. Foster, who accidentally shot himself in the foot.
Source: Tom Seymour, "When the Civil War Came to Maine", Fishermen's Voice, Vol. 22, No. 8, August 2017.
3. The July 19, 1863 Battle of Buffington Island, actually fought near Portland, Meigs County, Ohio (39° 0′ 9″ North). The Ohio History Connection, formerly the Ohio Historical Society, calls Buffington Battlefield Memorial Park "The site of the only significant Civil War Battle in Ohio." About 3000 U. S. troops and two gunboats, the U.S.S. Moose and the U.S.S. Allegheny Belle, engaged 1800 rebels under General John Hunt Morgan.
Source: "Battle of Buffington Island", Ohio History Central. https://ohiohistorycentral.org/w/Ba...s across the Ohio River into southern Indiana.
4. The July 26, 1863 Battle of Salineville, Columbiana County, Ohio (40° 37′ 24″ North). Major W.B. Way's 9th Michigan Cavalry fought a running battle with Morgan’s remaining 475 troopers. After less than 90 minutes of fighting, over one hundred rebels had been killed, wounded, and captured, and less than twenty Union soldiers wounded. Three miles west of nearby West Point, Columbiana County, Major George W. Rue’s 9th Kentucky Cavalry surrounded Morgan and 364 of his command. Morgan surrendered. This location (40° 41′ 53″ North) is marked by a monument dedicated in 1939, which calls the site "the farthest point north ever reached by any body of Confederate troops during the Civil War."
Source: "July 26, 1863", Civil War in Kentucky. https://civilwarinkentucky.wordpress.com/2013/07/26/july-26-1863/
Edit - We have a question of semantics here. What constitutes a "battle?"
My dictionary lists several definitions, one of which is "any fight or struggle; conflict."
If the question had asked for the northernmost land battle involving regular forces of both Union and Confederates, then the only acceptable answer would be the Battle of Salineville, which took place in Ohio.
Since the question wasn't that specific, I am accepting St. Albans as a correct answer. I am also accepting the two answers naming conflicts in North Dakota involving US forces and Native Americans. They didn't have a direct bearing on the War Between the States, but they took place during that time period.
Everybody who answered gets credit for a correct response on this one.