Heat 1 tablespoon butter in a large skillet over medium-high heat until melted and hot.
Add the ground beef and cook about 3 minutes until it begins to brown, breaking it up as needed.
Push the beef to one side and place the cut-side of the onion in the pan; continue cooking the beef and onion for 3–4 more minutes until the beef is nicely browned and the onion is fragrant.
Turn off the heat, tilt the pan, and spoon out and discard excess fat from the pan.
Return the pan to medium-high, add the remaining 3 tablespoons butter, then add the canned tomatoes and Italian seasoning; if using whole tomatoes, mash and break them up in the pan.
Bring the sauce to a simmer, then reduce heat to low and simmer gently for 45 minutes, stirring occasionally; season with salt to taste.
While the sauce simmers, cook the hearts of palm linguini according to the package instructions, then drain.
To assemble bowls, place linguini in the base, top with the tomato and beef sauce, then sprinkle with grated Parmesan and your choice of parsley, basil, or oregano.