I suggest using the {sf} package tools & techniques, rather than the {sp} based ones. SF is the newer of the two packages - and much, much easier to use. Since the {sf} objects are modified data frames you can use all the {dplyr} and what not kind of tools. Much recommended!
library(sf)
library(dplyr)
garmon <- data.frame(lat = 50.87991, # create garmon as a data frame...
lon = 4.696799) %>%
st_as_sf(coords = c('lon', 'lat'), crs = 4326) # ... and set it as a {sf} object, interpreting values in context of 4326
garmon %>% # take the garmon object...
st_transform(31370) # ... and transform it to EPSG:31370, printing the output to console
# Simple feature collection with 1 feature and 0 fields
# Geometry type: POINT
# Dimension: XY
# Bounding box: xmin: 173086.5 ymin: 174445.1 xmax: 173086.5 ymax: 174445.1
# Projected CRS: BD72 / Belgian Lambert 72
# geometry
# 1 POINT (173086.5 174445.1)