It's a little hard to solve your exact problem without a reproducible example, but I think what you are looking for is the extract() function from the raster package. This means that you will need your data in the form of a raster package object, but there is a helper function in the raster package to do just that (rasterFromXYZ()).
Note that in the snippet below, I don't do library(raster), because the raster package interferes with the tidyverse methods when it is attached.
Hope this helps!
library(tidyverse)
DFgrid <- list(
longitude = seq(44, 45, length.out = 10),
latitude = seq(-64, -63, length.out = 10)
) %>%
cross_df() %>%
# make it so that higher values are to the northeast
mutate(value = longitude - 44 + latitude + 64)
# I'm guessing this is what your DFgrid looks like?
DFgrid
#> # A tibble: 100 x 3
#> longitude latitude value
#> <dbl> <dbl> <dbl>
#> 1 44 -64 0
#> 2 44.1 -64 0.111
#> 3 44.2 -64 0.222
#> 4 44.3 -64 0.333
#> 5 44.4 -64 0.444
#> 6 44.6 -64 0.556
#> 7 44.7 -64 0.667
#> 8 44.8 -64 0.778
#> 9 44.9 -64 0.889
#> 10 45 -64 1
#> # … with 90 more rows
ggplot(DFgrid, aes(longitude, latitude, fill = value)) +
geom_raster()

# create a raster object
rast_obj <- DFgrid %>%
# column order (X, Y, Z) matters
select(longitude, latitude, value) %>%
raster::rasterFromXYZ()
# create an X, Y data frame (order matters!)
new_points <- tibble(
longitude = c(44.1, 44.9),
latitude = c(-63.9, -63.1)
)
# use raster::extract(<raster object>, <XY data frame of coordinates>),
# which returns a vector with the same number of rows as the data frame
new_points$value <- raster::extract(rast_obj, new_points)
new_points
#> # A tibble: 2 x 3
#> longitude latitude value
#> <dbl> <dbl> <dbl>
#> 1 44.1 -63.9 0.222
#> 2 44.9 -63.1 1.78
Created on 2019-03-14 by the reprex package (v0.2.1)